ubcpdk 2.3.2__tar.gz → 2.3.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (204) hide show
  1. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/PKG-INFO +4 -3
  2. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/README.md +2 -1
  3. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/pyproject.toml +5 -5
  4. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/__init__.py +1 -1
  5. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/components.py +2 -2
  6. ubcpdk-2.3.4/ubcpdk/data/convert_to_pandas.py +39 -0
  7. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/pymacros/set_menus.lym +1 -1
  8. ubcpdk-2.3.4/ubcpdk/samples/test_rings.py +75 -0
  9. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/LICENSE +0 -0
  10. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/README.md +0 -0
  11. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/config.py +0 -0
  12. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/__init__.py +0 -0
  13. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/chop.py +0 -0
  14. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/dbr.md +0 -0
  15. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/dbr.py +0 -0
  16. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/find_bandwidth.py +0 -0
  17. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/read_mat.py +0 -0
  18. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/remove_baseline.py +0 -0
  19. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/data/windowed_mean.py +0 -0
  20. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1310_ANT.GDS +0 -0
  21. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1550_ANT.GDS +0 -0
  22. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/Alignment_Marker.GDS +0 -0
  23. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/GCs_BB.gds +0 -0
  24. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_adiabatic_te1550.gds +0 -0
  25. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_adiabatic_tm1550.gds +0 -0
  26. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_bdc_te1550.gds +0 -0
  27. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_crossing4.gds +0 -0
  28. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_gc_te1550.gds +0 -0
  29. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_gc_tm1550.gds +0 -0
  30. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1310.gds +0 -0
  31. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1550.gds +0 -0
  32. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_terminator_te1310.gds +0 -0
  33. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_terminator_te1550.gds +0 -0
  34. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_terminator_tm1550.gds +0 -0
  35. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_y_1550.gds +0 -0
  36. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/ebeam_y_adiabatic.gds +0 -0
  37. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/taper_si_simm_1310.gds +0 -0
  38. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam/taper_si_simm_1550.gds +0 -0
  39. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/Alignment_Marker.GDS +0 -0
  40. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/Packaging_FibreArray_8ch.gds +0 -0
  41. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/SEM_example.gds +0 -0
  42. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_BondPad.gds +0 -0
  43. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_bdc_tm1550.gds +0 -0
  44. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310.gds +0 -0
  45. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_8deg.gds +0 -0
  46. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_broadband.gds +0 -0
  47. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_90nmSlab.gds +0 -0
  48. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_broadband.GDS +0 -0
  49. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_splitter_adiabatic_swg_te1550.gds +0 -0
  50. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_swg_edgecoupler.gds +0 -0
  51. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_terminator_te1310.gds +0 -0
  52. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/ebeam_y_adiabatic_1310.gds +0 -0
  53. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/metal_via.gds +0 -0
  54. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1310.gds +0 -0
  55. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1550.gds +0 -0
  56. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/siepic_o_gc_te1270_BB.GDS +0 -0
  57. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/siepic_o_pwbstlas_si_BB.GDS +0 -0
  58. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_Beta/thermal_phase_shifters.gds +0 -0
  59. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/EBeam_SiN/ebeam_BondPad.gds +0 -0
  60. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/Packaging_FibreArray_8ch.gds +0 -0
  61. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/SEM_example.gds +0 -0
  62. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_BondPad.gds +0 -0
  63. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_adiabatic_te1550.gds +0 -0
  64. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_adiabatic_tm1550.gds +0 -0
  65. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_bdc_te1550.gds +0 -0
  66. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_bdc_tm1550.gds +0 -0
  67. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_crossing4.gds +0 -0
  68. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1310.gds +0 -0
  69. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1310_8deg.gds +0 -0
  70. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1310_broadband.gds +0 -0
  71. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1550.gds +0 -0
  72. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1550_90nmSlab.gds +0 -0
  73. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_te1550_broadband.gds +0 -0
  74. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_gc_tm1550.gds +0 -0
  75. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_splitter_adiabatic_swg_te1550.gds +0 -0
  76. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_splitter_swg_assist_te1310.gds +0 -0
  77. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_splitter_swg_assist_te1550.gds +0 -0
  78. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_swg_edgecoupler.gds +0 -0
  79. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_terminator_te1310.gds +0 -0
  80. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_terminator_te1550.gds +0 -0
  81. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_terminator_tm1550.gds +0 -0
  82. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_y_1550.gds +0 -0
  83. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_y_adiabatic.gds +0 -0
  84. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/ebeam_y_adiabatic_1310.gds +0 -0
  85. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/metal_via.gds +0 -0
  86. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/photonic_wirebond_surfacetaper_1310.gds +0 -0
  87. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/photonic_wirebond_surfacetaper_1550.gds +0 -0
  88. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/gds/thermal_phase_shifters.gds +0 -0
  89. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/import_gds.py +0 -0
  90. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/import_pdk.py +0 -0
  91. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/drc/ELEC463 Doping.lydrc +0 -0
  92. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/drc/ELEC463 Metal Heater.lydrc +0 -0
  93. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/drc/SiEPIC_EBeam_DRC.lyp +0 -0
  94. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/layers.lyp +0 -0
  95. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/layers2.lyp +0 -0
  96. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/pymacros/klayout_Library.lym +0 -0
  97. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/klayout/tech/tech.lyt +0 -0
  98. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/layers.yaml +0 -0
  99. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num10_1272.mat +0 -0
  100. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num11_1273.mat +0 -0
  101. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num12_1271.mat +0 -0
  102. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num13_1278.mat +0 -0
  103. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num14_1276.mat +0 -0
  104. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num15_1277.mat +0 -0
  105. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num16_1275.mat +0 -0
  106. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num17_1282.mat +0 -0
  107. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num18_1280.mat +0 -0
  108. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num19_1281.mat +0 -0
  109. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num1_1266.mat +0 -0
  110. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num20_1279.mat +0 -0
  111. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num21_1286.mat +0 -0
  112. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num22_1284.mat +0 -0
  113. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num23_1285.mat +0 -0
  114. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num24_1283.mat +0 -0
  115. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num2_1264.mat +0 -0
  116. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num3_1265.mat +0 -0
  117. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num4_1263.mat +0 -0
  118. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num5_1270.mat +0 -0
  119. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num6_1268.mat +0 -0
  120. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num7_1269.mat +0 -0
  121. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num8_1267.mat +0 -0
  122. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num9_1274.mat +0 -0
  123. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num10_1248.mat +0 -0
  124. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num11_1249.mat +0 -0
  125. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num12_1247.mat +0 -0
  126. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num13_1254.mat +0 -0
  127. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num14_1252.mat +0 -0
  128. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num15_1253.mat +0 -0
  129. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num16_1251.mat +0 -0
  130. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num17_1258.mat +0 -0
  131. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num18_1256.mat +0 -0
  132. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num19_1257.mat +0 -0
  133. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num1_1242.mat +0 -0
  134. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num20_1255.mat +0 -0
  135. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num21_1262.mat +0 -0
  136. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num22_1260.mat +0 -0
  137. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num23_1261.mat +0 -0
  138. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num24_1259.mat +0 -0
  139. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num2_1240.mat +0 -0
  140. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num3_1241.mat +0 -0
  141. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num4_1239.mat +0 -0
  142. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num5_1246.mat +0 -0
  143. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num6_1244.mat +0 -0
  144. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num7_1245.mat +0 -0
  145. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num8_1243.mat +0 -0
  146. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num9_1250.mat +0 -0
  147. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num10_1200.mat +0 -0
  148. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num11_1201.mat +0 -0
  149. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num12_1199.mat +0 -0
  150. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num13_1206.mat +0 -0
  151. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num14_1204.mat +0 -0
  152. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num15_1205.mat +0 -0
  153. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num16_1203.mat +0 -0
  154. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num17_1210.mat +0 -0
  155. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num18_1208.mat +0 -0
  156. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num19_1209.mat +0 -0
  157. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num1_1194.mat +0 -0
  158. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num20_1207.mat +0 -0
  159. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num21_1214.mat +0 -0
  160. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num22_1212.mat +0 -0
  161. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num23_1213.mat +0 -0
  162. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num24_1211.mat +0 -0
  163. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num2_1192.mat +0 -0
  164. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num3_1193.mat +0 -0
  165. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num4_1191.mat +0 -0
  166. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num5_1198.mat +0 -0
  167. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num6_1196.mat +0 -0
  168. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num7_1197.mat +0 -0
  169. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num8_1195.mat +0 -0
  170. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num9_1202.mat +0 -0
  171. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/EB486A_URChip3Coords.txt +0 -0
  172. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/EB486A_URChip3Coords1.txt +0 -0
  173. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/IPC_LukasChrostowski.rtf +0 -0
  174. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/IPC_ZiheGao.rtf +0 -0
  175. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/LukasChrostowski_MZI1_135_Scan1.mat +0 -0
  176. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/LukasChrostowski_MZI2_136_Scan1.mat +0 -0
  177. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI17_265_Scan1.mat +0 -0
  178. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI1_272_Scan1.mat +0 -0
  179. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI1_273_Scan1.mat +0 -0
  180. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI2_271_Scan1.mat +0 -0
  181. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI3_270_Scan1.mat +0 -0
  182. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI4_269_Scan1.mat +0 -0
  183. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI5_268_Scan1.mat +0 -0
  184. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI6_267_Scan1.mat +0 -0
  185. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/mzi/ZiheGao_MZI8_266_Scan1.mat +0 -0
  186. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g100_1495.mat +0 -0
  187. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g150_1494.mat +0 -0
  188. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g200_1493.mat +0 -0
  189. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g50_1496.mat +0 -0
  190. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g100_1498.mat +0 -0
  191. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g150_1497.mat +0 -0
  192. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g150_1492.mat +0 -0
  193. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g200_1491.mat +0 -0
  194. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g250_1490.mat +0 -0
  195. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/samples/data/ring/lukasc_RingResonator.txt +0 -0
  196. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/__init__.py +0 -0
  197. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/circuits/__init__.py +0 -0
  198. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/circuits/mzi_spectrum.py +0 -0
  199. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/circuits/waveguide.py +0 -0
  200. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/find_neff_vs_width.csv +0 -0
  201. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/lumerical/EBeam.cml +0 -0
  202. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/lumerical/lumerical_process_file.lbr +0 -0
  203. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/simulation/modes_waveguide.py +0 -0
  204. {ubcpdk-2.3.2 → ubcpdk-2.3.4}/ubcpdk/tech.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ubcpdk
3
- Version: 2.3.2
3
+ Version: 2.3.4
4
4
  Summary: ubcpdk pdk
5
5
  Keywords: python
6
6
  Author-email: gdsfactory <contact@gdsfactory.com>
@@ -10,7 +10,7 @@ Classifier: License :: OSI Approved :: MIT License
10
10
  Classifier: Programming Language :: Python :: 3.10
11
11
  Classifier: Programming Language :: Python :: 3.11
12
12
  Classifier: Operating System :: OS Independent
13
- Requires-Dist: gdsfactory[cad]==7.8.10
13
+ Requires-Dist: gdsfactory[cad]==7.8.18
14
14
  Requires-Dist: gplugins[tidy3d,sax,schematic]>=0.8.4,<0.9.0
15
15
  Requires-Dist: pytest ; extra == "dev"
16
16
  Requires-Dist: pytest-cov ; extra == "dev"
@@ -22,7 +22,7 @@ Requires-Dist: jupyter-book==0.15.1 ; extra == "docs"
22
22
  Provides-Extra: dev
23
23
  Provides-Extra: docs
24
24
 
25
- # ubcpdk (SiEPIC Ebeam PDK) 2.3.2
25
+ # ubcpdk (SiEPIC Ebeam PDK) 2.3.4
26
26
 
27
27
  [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/gdsfactory/binder-sandbox/HEAD)
28
28
  [![pypi](https://img.shields.io/pypi/v/ubcpdk)](https://pypi.org/project/ubcpdk/)
@@ -61,6 +61,7 @@ For developers you need to `git clone` the GitHub repository, fork it, git add,
61
61
  ```
62
62
  git clone https://github.com/gdsfactory/ubc.git
63
63
  cd ubc
64
+ conda install -c conda-forge gdstk -y
64
65
  pip install -e . pre-commit
65
66
  pre-commit install
66
67
  python install_tech.py
@@ -1,4 +1,4 @@
1
- # ubcpdk (SiEPIC Ebeam PDK) 2.3.2
1
+ # ubcpdk (SiEPIC Ebeam PDK) 2.3.4
2
2
 
3
3
  [![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/gdsfactory/binder-sandbox/HEAD)
4
4
  [![pypi](https://img.shields.io/pypi/v/ubcpdk)](https://pypi.org/project/ubcpdk/)
@@ -37,6 +37,7 @@ For developers you need to `git clone` the GitHub repository, fork it, git add,
37
37
  ```
38
38
  git clone https://github.com/gdsfactory/ubc.git
39
39
  cd ubc
40
+ conda install -c conda-forge gdstk -y
40
41
  pip install -e . pre-commit
41
42
  pre-commit install
42
43
  python install_tech.py
@@ -15,7 +15,7 @@ classifiers = [
15
15
  "Operating System :: OS Independent"
16
16
  ]
17
17
  dependencies = [
18
- "gdsfactory[cad]==7.8.10",
18
+ "gdsfactory[cad]==7.8.18",
19
19
  "gplugins[tidy3d,sax,schematic]>=0.8.4,<0.9.0"
20
20
  ]
21
21
  description = "ubcpdk pdk"
@@ -24,7 +24,7 @@ license = {file = "LICENSE"}
24
24
  name = "ubcpdk"
25
25
  readme = "README.md"
26
26
  requires-python = ">=3.10"
27
- version = "2.3.2"
27
+ version = "2.3.4"
28
28
 
29
29
  [project.optional-dependencies]
30
30
  dev = [
@@ -147,7 +147,7 @@ message_template = "Bump to {new_version}"
147
147
  tag_template = "v{new_version}"
148
148
 
149
149
  [tool.tbump.version]
150
- current = "2.3.2"
150
+ current = "2.3.4"
151
151
  regex = '''
152
152
  (?P<major>\d+)
153
153
  \.
@@ -159,11 +159,11 @@ regex = '''
159
159
  [tool.towncrier]
160
160
  directory = ".changelog.d"
161
161
  filename = "CHANGELOG.md"
162
- issue_format = "[#{issue}](https://github.com/gdsfactory/gdsfactory/issues/{issue})"
162
+ issue_format = "[#{issue}](https://github.com/gdsfactory/ubc/issues/{issue})"
163
163
  package = "gdsfactory"
164
164
  start_string = "<!-- towncrier release notes start -->\n"
165
165
  template = ".changelog.d/changelog_template.jinja"
166
- title_format = "## [{version}](https://github.com/gdsfactory/gdsfactory/releases/tag/v{version}) - {project_date}"
166
+ title_format = "## [{version}](https://github.com/gdsfactory/ubc/releases/tag/v{version}) - {project_date}"
167
167
  underlines = ["", "", ""]
168
168
 
169
169
  [[tool.towncrier.type]]
@@ -11,7 +11,7 @@ from ubcpdk import components, data, tech
11
11
  from ubcpdk.config import CONFIG, PATH, module
12
12
  from ubcpdk.tech import LAYER, LAYER_STACK, LAYER_VIEWS, cross_sections
13
13
 
14
- __version__ = "2.3.2"
14
+ __version__ = "2.3.4"
15
15
 
16
16
  __all__ = [
17
17
  "CONFIG",
@@ -440,7 +440,7 @@ def get_input_label_text(
440
440
  name = component_name or port.parent.metadata_child.get("name")
441
441
  name = clean_name(name)
442
442
  # return f"opt_{polarization.upper()}_{int(wavelength * 1000.0)}_device_{username}-{name}-{gc_index}-{port.name}"
443
- return f"opt_{polarization.upper()}_{int(wavelength * 1000.0)}_device_{username}-{name}"
443
+ return f"opt_in_{polarization.upper()}_{int(wavelength * 1000.0)}_device_{username}-{name}"
444
444
 
445
445
 
446
446
  def get_input_labels(
@@ -481,7 +481,7 @@ def get_input_labels(
481
481
  return [label]
482
482
 
483
483
 
484
- @gf.cell
484
+ @gf.cell_with_child
485
485
  def add_fiber_array(
486
486
  component: ComponentSpec = straight,
487
487
  component_name: Optional[str] = None,
@@ -0,0 +1,39 @@
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))
@@ -17,7 +17,7 @@
17
17
  <text>
18
18
  import pya
19
19
 
20
- __version__ = "2.3.2"
20
+ __version__ = "2.3.4"
21
21
 
22
22
 
23
23
  def set_menu():
@@ -0,0 +1,75 @@
1
+ import pathlib
2
+ from functools import partial
3
+
4
+ import gdsfactory as gf
5
+
6
+ import ubcpdk
7
+ import ubcpdk.components as pdk
8
+
9
+ size = (605, 410)
10
+ pack = partial(
11
+ gf.pack, max_size=size, add_ports_prefix=False, add_ports_suffix=False, spacing=2
12
+ )
13
+ add_gc = ubcpdk.components.add_fiber_array
14
+
15
+ length_x = 0.1
16
+
17
+
18
+ @gf.cell
19
+ def EBeam_YourUserName_ring_double10() -> pathlib.Path:
20
+ gaps = [100, 150, 200]
21
+ radiuses = [10]
22
+
23
+ rings = [
24
+ pdk.ring_double(
25
+ radius=radius, length_x=length_x, gap=gap * 1e-3, decorator=add_gc
26
+ )
27
+ for radius in radiuses
28
+ for gap in gaps
29
+ ]
30
+ c = pack(rings)
31
+ if len(c) > 1:
32
+ raise ValueError(f"Failed to pack in 1 component of {size}, got {len(c)}")
33
+ return c[0]
34
+
35
+
36
+ @gf.cell
37
+ def EBeam_YourUserName_ring_double30() -> pathlib.Path:
38
+ gaps = [150, 200, 250]
39
+ radiuses = [30]
40
+ rings = [
41
+ pdk.ring_double(
42
+ radius=radius, length_x=length_x, gap=gap * 1e-3, decorator=add_gc
43
+ )
44
+ for radius in radiuses
45
+ for gap in gaps
46
+ ]
47
+
48
+ c = pack(rings)
49
+ if len(c) > 1:
50
+ raise ValueError(f"Failed to pack in 1 component of {size}, got {len(c)}")
51
+ return c[0]
52
+
53
+
54
+ @gf.cell
55
+ def EBeam_YourUserName_ring_double3() -> pathlib.Path:
56
+ gaps = [100, 150]
57
+ radiuses = [3]
58
+ rings = [
59
+ pdk.ring_double(
60
+ radius=radius, length_x=length_x, gap=gap * 1e-3, decorator=add_gc
61
+ )
62
+ for radius in radiuses
63
+ for gap in gaps
64
+ ]
65
+
66
+ c = pack(rings)
67
+ if len(c) > 1:
68
+ raise ValueError(f"Failed to pack in 1 component of {size}, got {len(c)}")
69
+ return c[0]
70
+
71
+
72
+ if __name__ == "__main__":
73
+ c = EBeam_YourUserName_ring_double3()
74
+ c.write_gds("extra/EBeam_YourUserName_ring_double3.gds")
75
+ c.show()
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes