ubcpdk 2.3.4__tar.gz → 2.3.5__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.4 → ubcpdk-2.3.5}/PKG-INFO +4 -4
  2. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/README.md +1 -1
  3. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/pyproject.toml +4 -24
  4. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/__init__.py +1 -1
  5. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/components.py +39 -33
  6. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/import_gds.py +5 -2
  7. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/pymacros/set_menus.lym +1 -1
  8. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/tech.py +9 -14
  9. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/LICENSE +0 -0
  10. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/README.md +0 -0
  11. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/config.py +0 -0
  12. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/__init__.py +0 -0
  13. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/chop.py +0 -0
  14. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/convert_to_pandas.py +0 -0
  15. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/dbr.md +0 -0
  16. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/dbr.py +0 -0
  17. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/find_bandwidth.py +0 -0
  18. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/read_mat.py +0 -0
  19. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/remove_baseline.py +0 -0
  20. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/data/windowed_mean.py +0 -0
  21. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1310_ANT.GDS +0 -0
  22. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ANT/ebeam_splitter_swg_assist_te1550_ANT.GDS +0 -0
  23. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/Alignment_Marker.GDS +0 -0
  24. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/GCs_BB.gds +0 -0
  25. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_adiabatic_te1550.gds +0 -0
  26. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_adiabatic_tm1550.gds +0 -0
  27. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_bdc_te1550.gds +0 -0
  28. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_crossing4.gds +0 -0
  29. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_gc_te1550.gds +0 -0
  30. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_gc_tm1550.gds +0 -0
  31. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1310.gds +0 -0
  32. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_splitter_swg_assist_te1550.gds +0 -0
  33. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_terminator_te1310.gds +0 -0
  34. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_terminator_te1550.gds +0 -0
  35. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_terminator_tm1550.gds +0 -0
  36. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_y_1550.gds +0 -0
  37. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/ebeam_y_adiabatic.gds +0 -0
  38. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/taper_si_simm_1310.gds +0 -0
  39. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam/taper_si_simm_1550.gds +0 -0
  40. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/Alignment_Marker.GDS +0 -0
  41. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/Packaging_FibreArray_8ch.gds +0 -0
  42. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/SEM_example.gds +0 -0
  43. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_BondPad.gds +0 -0
  44. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_bdc_tm1550.gds +0 -0
  45. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310.gds +0 -0
  46. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_8deg.gds +0 -0
  47. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1310_broadband.gds +0 -0
  48. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_90nmSlab.gds +0 -0
  49. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_gc_te1550_broadband.GDS +0 -0
  50. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_splitter_adiabatic_swg_te1550.gds +0 -0
  51. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_swg_edgecoupler.gds +0 -0
  52. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_terminator_te1310.gds +0 -0
  53. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/ebeam_y_adiabatic_1310.gds +0 -0
  54. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/metal_via.gds +0 -0
  55. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1310.gds +0 -0
  56. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/photonic_wirebond_surfacetaper_1550.gds +0 -0
  57. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/siepic_o_gc_te1270_BB.GDS +0 -0
  58. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/siepic_o_pwbstlas_si_BB.GDS +0 -0
  59. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_Beta/thermal_phase_shifters.gds +0 -0
  60. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/EBeam_SiN/ebeam_BondPad.gds +0 -0
  61. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/Packaging_FibreArray_8ch.gds +0 -0
  62. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/SEM_example.gds +0 -0
  63. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_BondPad.gds +0 -0
  64. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_adiabatic_te1550.gds +0 -0
  65. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_adiabatic_tm1550.gds +0 -0
  66. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_bdc_te1550.gds +0 -0
  67. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_bdc_tm1550.gds +0 -0
  68. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_crossing4.gds +0 -0
  69. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1310.gds +0 -0
  70. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1310_8deg.gds +0 -0
  71. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1310_broadband.gds +0 -0
  72. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1550.gds +0 -0
  73. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1550_90nmSlab.gds +0 -0
  74. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_te1550_broadband.gds +0 -0
  75. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_gc_tm1550.gds +0 -0
  76. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_splitter_adiabatic_swg_te1550.gds +0 -0
  77. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_splitter_swg_assist_te1310.gds +0 -0
  78. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_splitter_swg_assist_te1550.gds +0 -0
  79. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_swg_edgecoupler.gds +0 -0
  80. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_terminator_te1310.gds +0 -0
  81. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_terminator_te1550.gds +0 -0
  82. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_terminator_tm1550.gds +0 -0
  83. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_y_1550.gds +0 -0
  84. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_y_adiabatic.gds +0 -0
  85. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/ebeam_y_adiabatic_1310.gds +0 -0
  86. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/metal_via.gds +0 -0
  87. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/photonic_wirebond_surfacetaper_1310.gds +0 -0
  88. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/photonic_wirebond_surfacetaper_1550.gds +0 -0
  89. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/gds/thermal_phase_shifters.gds +0 -0
  90. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/import_pdk.py +0 -0
  91. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/drc/ELEC463 Doping.lydrc +0 -0
  92. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/drc/ELEC463 Metal Heater.lydrc +0 -0
  93. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/drc/SiEPIC_EBeam_DRC.lyp +0 -0
  94. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/layers.lyp +0 -0
  95. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/layers2.lyp +0 -0
  96. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/pymacros/klayout_Library.lym +0 -0
  97. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/klayout/tech/tech.lyt +0 -0
  98. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/layers.yaml +0 -0
  99. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num10_1272.mat +0 -0
  100. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num11_1273.mat +0 -0
  101. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num12_1271.mat +0 -0
  102. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num13_1278.mat +0 -0
  103. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num14_1276.mat +0 -0
  104. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num15_1277.mat +0 -0
  105. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num16_1275.mat +0 -0
  106. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num17_1282.mat +0 -0
  107. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num18_1280.mat +0 -0
  108. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num19_1281.mat +0 -0
  109. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num1_1266.mat +0 -0
  110. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num20_1279.mat +0 -0
  111. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num21_1286.mat +0 -0
  112. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num22_1284.mat +0 -0
  113. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num23_1285.mat +0 -0
  114. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num24_1283.mat +0 -0
  115. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num2_1264.mat +0 -0
  116. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num3_1265.mat +0 -0
  117. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num4_1263.mat +0 -0
  118. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num5_1270.mat +0 -0
  119. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num6_1268.mat +0 -0
  120. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num7_1269.mat +0 -0
  121. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num8_1267.mat +0 -0
  122. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet1Num9_1274.mat +0 -0
  123. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num10_1248.mat +0 -0
  124. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num11_1249.mat +0 -0
  125. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num12_1247.mat +0 -0
  126. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num13_1254.mat +0 -0
  127. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num14_1252.mat +0 -0
  128. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num15_1253.mat +0 -0
  129. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num16_1251.mat +0 -0
  130. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num17_1258.mat +0 -0
  131. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num18_1256.mat +0 -0
  132. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num19_1257.mat +0 -0
  133. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num1_1242.mat +0 -0
  134. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num20_1255.mat +0 -0
  135. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num21_1262.mat +0 -0
  136. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num22_1260.mat +0 -0
  137. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num23_1261.mat +0 -0
  138. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num24_1259.mat +0 -0
  139. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num2_1240.mat +0 -0
  140. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num3_1241.mat +0 -0
  141. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num4_1239.mat +0 -0
  142. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num5_1246.mat +0 -0
  143. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num6_1244.mat +0 -0
  144. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num7_1245.mat +0 -0
  145. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num8_1243.mat +0 -0
  146. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet2Num9_1250.mat +0 -0
  147. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num10_1200.mat +0 -0
  148. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num11_1201.mat +0 -0
  149. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num12_1199.mat +0 -0
  150. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num13_1206.mat +0 -0
  151. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num14_1204.mat +0 -0
  152. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num15_1205.mat +0 -0
  153. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num16_1203.mat +0 -0
  154. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num17_1210.mat +0 -0
  155. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num18_1208.mat +0 -0
  156. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num19_1209.mat +0 -0
  157. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num1_1194.mat +0 -0
  158. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num20_1207.mat +0 -0
  159. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num21_1214.mat +0 -0
  160. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num22_1212.mat +0 -0
  161. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num23_1213.mat +0 -0
  162. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num24_1211.mat +0 -0
  163. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num2_1192.mat +0 -0
  164. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num3_1193.mat +0 -0
  165. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num4_1191.mat +0 -0
  166. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num5_1198.mat +0 -0
  167. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num6_1196.mat +0 -0
  168. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num7_1197.mat +0 -0
  169. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num8_1195.mat +0 -0
  170. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/bragg/ELEC_413_lukasc_BraggSet4Num9_1202.mat +0 -0
  171. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/EB486A_URChip3Coords.txt +0 -0
  172. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/EB486A_URChip3Coords1.txt +0 -0
  173. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/IPC_LukasChrostowski.rtf +0 -0
  174. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/IPC_ZiheGao.rtf +0 -0
  175. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/LukasChrostowski_MZI1_135_Scan1.mat +0 -0
  176. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/LukasChrostowski_MZI2_136_Scan1.mat +0 -0
  177. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI17_265_Scan1.mat +0 -0
  178. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI1_272_Scan1.mat +0 -0
  179. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI1_273_Scan1.mat +0 -0
  180. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI2_271_Scan1.mat +0 -0
  181. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI3_270_Scan1.mat +0 -0
  182. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI4_269_Scan1.mat +0 -0
  183. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI5_268_Scan1.mat +0 -0
  184. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI6_267_Scan1.mat +0 -0
  185. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/mzi/ZiheGao_MZI8_266_Scan1.mat +0 -0
  186. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g100_1495.mat +0 -0
  187. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g150_1494.mat +0 -0
  188. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g200_1493.mat +0 -0
  189. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER10g50_1496.mat +0 -0
  190. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g100_1498.mat +0 -0
  191. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTER3g150_1497.mat +0 -0
  192. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g150_1492.mat +0 -0
  193. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g200_1491.mat +0 -0
  194. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/LukasC_RingDoubleTMR30g250_1490.mat +0 -0
  195. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/data/ring/lukasc_RingResonator.txt +0 -0
  196. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/samples/test_rings.py +0 -0
  197. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/__init__.py +0 -0
  198. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/circuits/__init__.py +0 -0
  199. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/circuits/mzi_spectrum.py +0 -0
  200. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/circuits/waveguide.py +0 -0
  201. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/find_neff_vs_width.csv +0 -0
  202. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/lumerical/EBeam.cml +0 -0
  203. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/lumerical/lumerical_process_file.lbr +0 -0
  204. {ubcpdk-2.3.4 → ubcpdk-2.3.5}/ubcpdk/simulation/modes_waveguide.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ubcpdk
3
- Version: 2.3.4
3
+ Version: 2.3.5
4
4
  Summary: ubcpdk pdk
5
5
  Keywords: python
6
6
  Author-email: gdsfactory <contact@gdsfactory.com>
@@ -10,8 +10,8 @@ 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.18
14
- Requires-Dist: gplugins[tidy3d,sax,schematic]>=0.8.4,<0.9.0
13
+ Requires-Dist: gdsfactory==7.13.0
14
+ Requires-Dist: gplugins[tidy3d,sax,schematic]>=0.9.13,<0.10
15
15
  Requires-Dist: pytest ; extra == "dev"
16
16
  Requires-Dist: pytest-cov ; extra == "dev"
17
17
  Requires-Dist: pytest_regressions ; 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.4
25
+ # ubcpdk (SiEPIC Ebeam PDK) 2.3.5
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/)
@@ -1,4 +1,4 @@
1
- # ubcpdk (SiEPIC Ebeam PDK) 2.3.4
1
+ # ubcpdk (SiEPIC Ebeam PDK) 2.3.5
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/)
@@ -15,8 +15,8 @@ classifiers = [
15
15
  "Operating System :: OS Independent"
16
16
  ]
17
17
  dependencies = [
18
- "gdsfactory[cad]==7.8.18",
19
- "gplugins[tidy3d,sax,schematic]>=0.8.4,<0.9.0"
18
+ "gdsfactory==7.13.0",
19
+ "gplugins[tidy3d,sax,schematic]>=0.9.13,<0.10"
20
20
  ]
21
21
  description = "ubcpdk pdk"
22
22
  keywords = ["python"]
@@ -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.4"
27
+ version = "2.3.5"
28
28
 
29
29
  [project.optional-dependencies]
30
30
  dev = [
@@ -39,26 +39,6 @@ docs = [
39
39
  "jupyter-book==0.15.1"
40
40
  ]
41
41
 
42
- [tool.black]
43
- exclude = ''' # Specify the files/dirs that should be ignored by the black formatter
44
- /(
45
- \.eggs
46
- | \.git
47
- | \.hg
48
- | \.mypy_cache
49
- | \.tox
50
- | \.venv
51
- | env
52
- | _build
53
- | buck-out
54
- | build
55
- | dist
56
- )/
57
- '''
58
- include = '\.pyi?$'
59
- line-length = 88
60
- target-version = ['py310']
61
-
62
42
  [tool.mypy]
63
43
  python_version = "3.10"
64
44
  strict = true
@@ -147,7 +127,7 @@ message_template = "Bump to {new_version}"
147
127
  tag_template = "v{new_version}"
148
128
 
149
129
  [tool.tbump.version]
150
- current = "2.3.4"
130
+ current = "2.3.5"
151
131
  regex = '''
152
132
  (?P<major>\d+)
153
133
  \.
@@ -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.4"
14
+ __version__ = "2.3.5"
15
15
 
16
16
  __all__ = [
17
17
  "CONFIG",
@@ -260,7 +260,7 @@ def photonic_wirebond_surfacetaper_1550() -> gf.Component:
260
260
  def gc_te1310() -> gf.Component:
261
261
  """Return ebeam_gc_te1310 fixed cell."""
262
262
  c = gf.Component()
263
- gc = import_gc("ebeam_gc_te1310.gds", info=info1310te)
263
+ gc = import_gc("ebeam_gc_te1310.gds")
264
264
  gc_ref = c << gc
265
265
  c.add_ports(gc_ref.ports)
266
266
  c.copy_child_info(gc)
@@ -272,6 +272,7 @@ def gc_te1310() -> gf.Component:
272
272
  layer=(1, 0),
273
273
  width=9,
274
274
  )
275
+ c.info.update(info1310te)
275
276
  return c
276
277
 
277
278
 
@@ -279,7 +280,7 @@ def gc_te1310() -> gf.Component:
279
280
  def gc_te1310_8deg() -> gf.Component:
280
281
  """Return ebeam_gc_te1310_8deg fixed cell."""
281
282
  c = gf.Component()
282
- gc = import_gc("ebeam_gc_te1310_8deg.gds", info=info1310te)
283
+ gc = import_gc("ebeam_gc_te1310_8deg.gds")
283
284
  gc_ref = c << gc
284
285
  c.add_ports(gc_ref.ports)
285
286
  c.copy_child_info(gc)
@@ -291,6 +292,7 @@ def gc_te1310_8deg() -> gf.Component:
291
292
  layer=(1, 0),
292
293
  width=9,
293
294
  )
295
+ c.info.update(info1310te)
294
296
  return c
295
297
 
296
298
 
@@ -298,7 +300,7 @@ def gc_te1310_8deg() -> gf.Component:
298
300
  def gc_te1310_broadband() -> gf.Component:
299
301
  """Return ebeam_gc_te1310_broadband fixed cell."""
300
302
  c = gf.Component()
301
- gc = import_gc("ebeam_gc_te1310_broadband.gds", info=info1310te)
303
+ gc = import_gc("ebeam_gc_te1310_broadband.gds")
302
304
  gc_ref = c << gc
303
305
  c.add_ports(gc_ref.ports)
304
306
  c.copy_child_info(gc)
@@ -310,6 +312,7 @@ def gc_te1310_broadband() -> gf.Component:
310
312
  layer=(1, 0),
311
313
  width=9,
312
314
  )
315
+ c.info.update(info1310te)
313
316
  return c
314
317
 
315
318
 
@@ -317,7 +320,7 @@ def gc_te1310_broadband() -> gf.Component:
317
320
  def gc_te1550() -> gf.Component:
318
321
  """Return ebeam_gc_te1550 fixed cell."""
319
322
  c = gf.Component()
320
- gc = import_gc("ebeam_gc_te1550.gds", info=info1550te)
323
+ gc = import_gc("ebeam_gc_te1550.gds")
321
324
  gc_ref = c << gc
322
325
  c.add_ports(gc_ref.ports)
323
326
  c.copy_child_info(gc)
@@ -329,6 +332,7 @@ def gc_te1550() -> gf.Component:
329
332
  layer=(1, 0),
330
333
  width=9,
331
334
  )
335
+ c.info.update(info1550te)
332
336
  return c
333
337
 
334
338
 
@@ -336,7 +340,7 @@ def gc_te1550() -> gf.Component:
336
340
  def gc_te1550_90nmSlab() -> gf.Component:
337
341
  """Return ebeam_gc_te1550_90nmSlab fixed cell."""
338
342
  c = gf.Component()
339
- gc = import_gc("ebeam_gc_te1550_90nmSlab.gds", info=info1550te)
343
+ gc = import_gc("ebeam_gc_te1550_90nmSlab.gds")
340
344
  gc_ref = c << gc
341
345
  c.add_ports(gc_ref.ports)
342
346
  c.copy_child_info(gc)
@@ -348,6 +352,7 @@ def gc_te1550_90nmSlab() -> gf.Component:
348
352
  layer=(1, 0),
349
353
  width=9,
350
354
  )
355
+ c.info.update(info1550te)
351
356
  return c
352
357
 
353
358
 
@@ -355,7 +360,7 @@ def gc_te1550_90nmSlab() -> gf.Component:
355
360
  def gc_te1550_broadband() -> gf.Component:
356
361
  """Return ebeam_gc_te1550_broadband fixed cell."""
357
362
  c = gf.Component()
358
- gc = import_gc("ebeam_gc_te1550_broadband.gds", info=info1550te)
363
+ gc = import_gc("ebeam_gc_te1550_broadband.gds")
359
364
  gc_ref = c << gc
360
365
  c.add_ports(gc_ref.ports)
361
366
  c.copy_child_info(gc)
@@ -367,6 +372,7 @@ def gc_te1550_broadband() -> gf.Component:
367
372
  layer=(1, 0),
368
373
  width=9,
369
374
  )
375
+ c.info.update(info1550te)
370
376
  return c
371
377
 
372
378
 
@@ -374,7 +380,7 @@ def gc_te1550_broadband() -> gf.Component:
374
380
  def gc_tm1550() -> gf.Component:
375
381
  """Return ebeam_gc_tm1550 fixed cell."""
376
382
  c = gf.Component()
377
- gc = import_gc("ebeam_gc_tm1550.gds", info=info1550tm)
383
+ gc = import_gc("ebeam_gc_tm1550.gds")
378
384
  gc_ref = c << gc
379
385
  c.add_ports(gc_ref.ports)
380
386
  c.copy_child_info(gc)
@@ -386,6 +392,7 @@ def gc_tm1550() -> gf.Component:
386
392
  layer=(1, 0),
387
393
  width=9,
388
394
  )
395
+ c.info.update(info1550tm)
389
396
  return c
390
397
 
391
398
 
@@ -494,6 +501,7 @@ def add_fiber_array(
494
501
  cross_section: CrossSectionSpec = "xs_sc",
495
502
  layer_label: LayerSpec = LAYER.TEXT,
496
503
  straight: ComponentSpec = straight,
504
+ post_process: Callable | None = None,
497
505
  **kwargs,
498
506
  ) -> Component:
499
507
  """Returns component with grating couplers and labels on each port.
@@ -512,6 +520,8 @@ def add_fiber_array(
512
520
  grating_coupler: grating coupler instance, function or list of functions.
513
521
  cross_section: spec.
514
522
  layer_label: for label.
523
+ straight: straight component.
524
+ post_process: function to post process the component.
515
525
 
516
526
  """
517
527
  c = gf.Component()
@@ -536,6 +546,8 @@ def add_fiber_array(
536
546
  ref.rotate(-90)
537
547
  c.add_ports(ref.ports)
538
548
  c.copy_child_info(component)
549
+ if post_process:
550
+ c = post_process(c)
539
551
  return c
540
552
 
541
553
 
@@ -624,7 +636,6 @@ def dbr(
624
636
  l1=l1,
625
637
  l2=l2,
626
638
  cross_section=xs,
627
- decorator=None,
628
639
  )
629
640
  dbr = c << _dbr
630
641
  s.connect("o2", dbr.ports["o1"])
@@ -635,18 +646,17 @@ def dbr(
635
646
  coupler = partial(
636
647
  gf.components.coupler,
637
648
  cross_section=tech.xs_sc_simple,
638
- decorator=tech.add_pins_bbox_siepic,
649
+ post_process=tech.add_pins_bbox_siepic,
639
650
  )
640
651
  coupler_ring = partial(
641
652
  gf.components.coupler_ring,
642
653
  cross_section=tech.xs_sc_simple,
643
654
  add_bbox=tech.add_pins_bbox_siepic,
644
- # decorator=tech.add_pins_bbox_siepic,
645
655
  )
646
656
  mmi1x2 = partial(
647
657
  gf.components.mmi1x2,
648
658
  cross_section=tech.xs_sc_simple,
649
- decorator=tech.add_pins_bbox_siepic,
659
+ post_process=tech.add_pins_bbox_siepic,
650
660
  )
651
661
 
652
662
 
@@ -704,23 +714,13 @@ def ebeam_dc_halfring_straight(
704
714
 
705
715
  if siepic:
706
716
  x = tech.xs_sc_simple
707
- c.info.update(
708
- layout_model_port_pairs=(
709
- ("o1", "port 1"),
710
- ("o2", "port 2"),
711
- ("o3", "port 4"),
712
- ("o4", "port 3"),
713
- ),
714
- properties={
715
- "gap": gap * um,
716
- "radius": radius * um,
717
- "wg_thickness": thickness[LAYER.WG] * um,
718
- "wg_width": x.width * um,
719
- "Lc": length_x * um,
720
- },
721
- component_type=["optical"],
722
- model=model,
723
- )
717
+ c.info["model"] = model
718
+ c.info["gap"] = gap
719
+ c.info["radius"] = radius
720
+ c.info["wg_thickness"] = thickness[LAYER.WG]
721
+ c.info["wg_width"] = x.width
722
+ c.info["Lc"] = length_x
723
+
724
724
  return c
725
725
 
726
726
 
@@ -756,7 +756,7 @@ ring_single_heater = partial(
756
756
 
757
757
 
758
758
  ebeam_dc_te1550 = partial(
759
- gf.components.coupler, decorator=add_pins_bbox_siepic_remove_layers
759
+ gf.components.coupler, post_process=add_pins_bbox_siepic_remove_layers
760
760
  )
761
761
  taper = partial(gf.components.taper)
762
762
  spiral = partial(gf.components.spiral_external_io)
@@ -777,7 +777,7 @@ pad = partial(
777
777
  layer=LAYER.M2_ROUTER,
778
778
  bbox_layers=(LAYER.PAD_OPEN,),
779
779
  bbox_offsets=(-1.8,),
780
- decorator=add_pins_siepic_metal,
780
+ post_process=add_pins_siepic_metal,
781
781
  )
782
782
 
783
783
 
@@ -830,7 +830,7 @@ def add_fiber_array_pads_rf(
830
830
  add_label, gf.port.auto_rename_ports_electrical
831
831
  )
832
832
  c1 = add_pads_rf(
833
- component=c0, decorator=rename_ports_and_add_label, orientation=orientation
833
+ component=c0, post_process=rename_ports_and_add_label, orientation=orientation
834
834
  )
835
835
  return add_fiber_array(component=c1, **kwargs)
836
836
 
@@ -851,10 +851,15 @@ def add_pads(
851
851
  c0 = gf.get_component(component)
852
852
  text = f"elec_{username}-{clean_name(c0.name)}_G"
853
853
  add_label = partial(add_label_electrical, text=text)
854
- return add_pads_rf(component=c0, decorator=add_label, **kwargs)
854
+ return add_pads_rf(component=c, post_process=add_label, **kwargs)
855
855
 
856
856
 
857
857
  if __name__ == "__main__":
858
+ import ubcpdk.components as uc
859
+
860
+ c = uc.ring_single_heater()
861
+ c = uc.add_fiber_array_pads_rf(c)
862
+
858
863
  # c = ring_double(length_y=10)
859
864
  # c = ring_with_crossing()
860
865
  # c = mmi1x2()
@@ -869,7 +874,8 @@ if __name__ == "__main__":
869
874
  # c = spiral()
870
875
  # c = mzi_heater()
871
876
  # c = ring_double_heater()
872
- c = ring_single_heater()
877
+ # c = ring_single_heater()
878
+ # c = gc_te1310()
873
879
  # c = ebeam_dc_halfring_straight()
874
880
  # c = ring_with_crossing()
875
881
  # c = ring_single()
@@ -173,13 +173,16 @@ def import_gds(gdspath, **kwargs):
173
173
  gdsdir=PATH.gds,
174
174
  library="Design kits/ebeam",
175
175
  model=gdspath.split(".")[0],
176
- decorator=add_ports_from_siepic_pins,
176
+ post_process=add_ports_from_siepic_pins,
177
177
  **kwargs,
178
178
  )
179
179
 
180
180
 
181
- def import_gc(gdspath, **kwargs):
181
+ def import_gc(gdspath, info=None, **kwargs):
182
182
  c = import_gds(gdspath, **kwargs)
183
+
184
+ if info is not None:
185
+ c.info.update(info)
183
186
  return gf.functions.mirror(component=c)
184
187
 
185
188
 
@@ -17,7 +17,7 @@
17
17
  <text>
18
18
  import pya
19
19
 
20
- __version__ = "2.3.4"
20
+ __version__ = "2.3.5"
21
21
 
22
22
 
23
23
  def set_menu():
@@ -292,19 +292,19 @@ cladding_offsets_optical_siepic = None
292
292
  ############################
293
293
  # Cross-sections functions
294
294
  ############################
295
-
296
- strip = partial(
295
+ cross_section = partial(
297
296
  gf.cross_section.cross_section,
298
297
  add_pins_function_name="add_pins_siepic",
299
298
  add_pins_function_module="ubcpdk.tech",
299
+ radius_min=5,
300
+ )
301
+
302
+ strip = partial(
303
+ cross_section,
300
304
  cladding_layers=cladding_layers_optical_siepic,
301
305
  cladding_offsets=cladding_offsets_optical_siepic,
302
306
  )
303
- strip_unclad = partial(
304
- gf.cross_section.cross_section,
305
- add_pins_function_name="add_pins_siepic",
306
- add_pins_function_module="ubcpdk.tech",
307
- )
307
+ strip_unclad = strip_simple = cross_section
308
308
  strip_heater_metal = partial(
309
309
  gf.cross_section.strip_heater_metal,
310
310
  layer="WG",
@@ -316,24 +316,19 @@ strip_heater_metal = partial(
316
316
  add_pins_function_module="ubcpdk.tech",
317
317
  )
318
318
 
319
- strip_simple = gf.cross_section.cross_section
320
319
  strip_bbox = partial(
321
- gf.cross_section.cross_section,
320
+ cross_section,
322
321
  bbox_layers=cladding_layers_optical_siepic,
323
322
  bbox_offsets=cladding_offsets_optical_siepic,
324
- add_pins_function_name="add_pins_siepic",
325
- add_pins_function_module="ubcpdk.tech",
326
323
  )
327
324
 
328
325
  metal_routing = partial(
329
- gf.cross_section.cross_section,
326
+ cross_section,
330
327
  layer=LAYER.M2_ROUTER,
331
328
  width=10.0,
332
329
  port_names=gf.cross_section.port_names_electrical,
333
330
  port_types=gf.cross_section.port_types_electrical,
334
331
  radius=None,
335
- add_pins_function_name="add_pins_siepic_metal",
336
- add_pins_function_module="ubcpdk.tech",
337
332
  )
338
333
  heater_metal = partial(
339
334
  metal_routing, width=4, layer=LAYER.M1_HEATER, add_pins_function_name=None
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