prefab 1.1.4__tar.gz → 1.1.6__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 (129) hide show
  1. prefab-1.1.6/.gitignore +10 -0
  2. {prefab-1.1.4 → prefab-1.1.6}/PKG-INFO +4 -2
  3. {prefab-1.1.4 → prefab-1.1.6}/README.md +2 -0
  4. {prefab-1.1.4 → prefab-1.1.6}/docs/CHANGELOG.md +13 -0
  5. prefab-1.1.6/docs/assets/images/flux_ID_nopredict.png +0 -0
  6. prefab-1.1.6/docs/assets/images/flux_ID_predict.png +0 -0
  7. {prefab-1.1.4 → prefab-1.1.6}/docs/examples/4_SEM_generation.ipynb +3 -5
  8. prefab-1.1.6/docs/examples/5_prediction_simulation.ipynb +1669 -0
  9. prefab-1.1.6/docs/examples/6_fabrication-aware_inverse_design.ipynb +53612 -0
  10. {prefab-1.1.4 → prefab-1.1.6}/docs/index.md +4 -0
  11. {prefab-1.1.4 → prefab-1.1.6}/mkdocs.yml +17 -15
  12. {prefab-1.1.4 → prefab-1.1.6}/prefab/__init__.py +1 -1
  13. {prefab-1.1.4 → prefab-1.1.6}/prefab/__main__.py +14 -11
  14. {prefab-1.1.4 → prefab-1.1.6}/prefab/compare.py +18 -3
  15. {prefab-1.1.4 → prefab-1.1.6}/prefab/device.py +223 -133
  16. {prefab-1.1.4 → prefab-1.1.6}/prefab/geometry.py +66 -22
  17. {prefab-1.1.4 → prefab-1.1.6}/prefab/predict.py +51 -21
  18. {prefab-1.1.4 → prefab-1.1.6}/prefab/read.py +122 -76
  19. {prefab-1.1.4 → prefab-1.1.6}/prefab/shapes.py +82 -81
  20. {prefab-1.1.4 → prefab-1.1.6}/pyproject.toml +1 -1
  21. prefab-1.1.4/.gitignore +0 -6
  22. {prefab-1.1.4 → prefab-1.1.6}/.gitattributes +0 -0
  23. {prefab-1.1.4 → prefab-1.1.6}/.github/workflows/docs-deploy.yml +0 -0
  24. {prefab-1.1.4 → prefab-1.1.6}/.github/workflows/python-publish.yml +0 -0
  25. {prefab-1.1.4 → prefab-1.1.6}/LICENSE +0 -0
  26. {prefab-1.1.4 → prefab-1.1.6}/docs/CNAME +0 -0
  27. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/blog-cards/python-for-photonics.png +0 -0
  28. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/favicon.ico +0 -0
  29. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/logo-white.png +0 -0
  30. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/logo.png +0 -0
  31. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/prefab_logo_white.svg +0 -0
  32. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/promo_c.png +0 -0
  33. {prefab-1.1.4 → prefab-1.1.6}/docs/assets/promo_p.png +0 -0
  34. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/.authors.yml +0 -0
  35. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/index.md +0 -0
  36. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0.md +0 -0
  37. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_11_1.png +0 -0
  38. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_11_2.png +0 -0
  39. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_13_2.png +0 -0
  40. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_13_3.png +0 -0
  41. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_13_4.png +0 -0
  42. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_3_1.png +0 -0
  43. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_3_2.png +0 -0
  44. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_3_3.png +0 -0
  45. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_7_2.png +0 -0
  46. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_7_3.png +0 -0
  47. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_7_4.png +0 -0
  48. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/prefab-v1.1.0_files/prefab-v1.1.0_9_2.png +0 -0
  49. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/posts/python-for-photonics.md +0 -0
  50. {prefab-1.1.4 → prefab-1.1.6}/docs/blog/prefab-v1.1.0.ipynb +0 -0
  51. {prefab-1.1.4 → prefab-1.1.6}/docs/examples/1_prediction.ipynb +0 -0
  52. {prefab-1.1.4 → prefab-1.1.6}/docs/examples/2_correction.ipynb +0 -0
  53. {prefab-1.1.4 → prefab-1.1.6}/docs/examples/3_sidewall_angle.ipynb +0 -0
  54. {prefab-1.1.4 → prefab-1.1.6}/docs/models.md +0 -0
  55. {prefab-1.1.4 → prefab-1.1.6}/docs/overrides/main.html +0 -0
  56. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/compare.md +0 -0
  57. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/device.md +0 -0
  58. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/geometry.md +0 -0
  59. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/models.md +0 -0
  60. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/predict.md +0 -0
  61. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/read.md +0 -0
  62. {prefab-1.1.4 → prefab-1.1.6}/docs/reference/shapes.md +0 -0
  63. {prefab-1.1.4 → prefab-1.1.6}/prefab/models.py +0 -0
  64. {prefab-1.1.4 → prefab-1.1.6}/site/404.html +0 -0
  65. {prefab-1.1.4 → prefab-1.1.6}/site/assets/_mkdocstrings.css +0 -0
  66. {prefab-1.1.4 → prefab-1.1.6}/site/assets/favicon.ico +0 -0
  67. {prefab-1.1.4 → prefab-1.1.6}/site/assets/images/favicon.png +0 -0
  68. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/bundle.a7c05c9e.min.js +0 -0
  69. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/bundle.a7c05c9e.min.js.map +0 -0
  70. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ar.min.js +0 -0
  71. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.da.min.js +0 -0
  72. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.de.min.js +0 -0
  73. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.du.min.js +0 -0
  74. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.el.min.js +0 -0
  75. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.es.min.js +0 -0
  76. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.fi.min.js +0 -0
  77. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.fr.min.js +0 -0
  78. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.he.min.js +0 -0
  79. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.hi.min.js +0 -0
  80. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.hu.min.js +0 -0
  81. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.hy.min.js +0 -0
  82. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.it.min.js +0 -0
  83. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ja.min.js +0 -0
  84. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.jp.min.js +0 -0
  85. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.kn.min.js +0 -0
  86. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ko.min.js +0 -0
  87. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.multi.min.js +0 -0
  88. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.nl.min.js +0 -0
  89. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.no.min.js +0 -0
  90. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.pt.min.js +0 -0
  91. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ro.min.js +0 -0
  92. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ru.min.js +0 -0
  93. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.sa.min.js +0 -0
  94. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +0 -0
  95. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.sv.min.js +0 -0
  96. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.ta.min.js +0 -0
  97. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.te.min.js +0 -0
  98. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.th.min.js +0 -0
  99. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.tr.min.js +0 -0
  100. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.vi.min.js +0 -0
  101. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/min/lunr.zh.min.js +0 -0
  102. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/tinyseg.js +0 -0
  103. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/lunr/wordcut.js +0 -0
  104. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/workers/search.b8dbb3d2.min.js +0 -0
  105. {prefab-1.1.4 → prefab-1.1.6}/site/assets/javascripts/workers/search.b8dbb3d2.min.js.map +0 -0
  106. {prefab-1.1.4 → prefab-1.1.6}/site/assets/logo.png +0 -0
  107. {prefab-1.1.4 → prefab-1.1.6}/site/assets/logo_neue.svg +0 -0
  108. {prefab-1.1.4 → prefab-1.1.6}/site/assets/promo_c.png +0 -0
  109. {prefab-1.1.4 → prefab-1.1.6}/site/assets/promo_p.png +0 -0
  110. {prefab-1.1.4 → prefab-1.1.6}/site/assets/stylesheets/main.66ac8b77.min.css +0 -0
  111. {prefab-1.1.4 → prefab-1.1.6}/site/assets/stylesheets/main.66ac8b77.min.css.map +0 -0
  112. {prefab-1.1.4 → prefab-1.1.6}/site/assets/stylesheets/palette.06af60db.min.css +0 -0
  113. {prefab-1.1.4 → prefab-1.1.6}/site/assets/stylesheets/palette.06af60db.min.css.map +0 -0
  114. {prefab-1.1.4 → prefab-1.1.6}/site/css/ansi-colours.css +0 -0
  115. {prefab-1.1.4 → prefab-1.1.6}/site/css/jupyter-cells.css +0 -0
  116. {prefab-1.1.4 → prefab-1.1.6}/site/css/pandas-dataframe.css +0 -0
  117. {prefab-1.1.4 → prefab-1.1.6}/site/examples/1_prediction/index.html +0 -0
  118. {prefab-1.1.4 → prefab-1.1.6}/site/examples/2_correction/index.html +0 -0
  119. {prefab-1.1.4 → prefab-1.1.6}/site/index.html +0 -0
  120. {prefab-1.1.4 → prefab-1.1.6}/site/models/index.html +0 -0
  121. {prefab-1.1.4 → prefab-1.1.6}/site/objects.inv +0 -0
  122. {prefab-1.1.4 → prefab-1.1.6}/site/reference/compare/index.html +0 -0
  123. {prefab-1.1.4 → prefab-1.1.6}/site/reference/device/index.html +0 -0
  124. {prefab-1.1.4 → prefab-1.1.6}/site/reference/geometry/index.html +0 -0
  125. {prefab-1.1.4 → prefab-1.1.6}/site/reference/models/index.html +0 -0
  126. {prefab-1.1.4 → prefab-1.1.6}/site/reference/read/index.html +0 -0
  127. {prefab-1.1.4 → prefab-1.1.6}/site/search/search_index.json +0 -0
  128. {prefab-1.1.4 → prefab-1.1.6}/site/sitemap.xml +0 -0
  129. {prefab-1.1.4 → prefab-1.1.6}/site/sitemap.xml.gz +0 -0
@@ -0,0 +1,10 @@
1
+ .DS_Store
2
+ __pycache__/
3
+ .ipynb_checkpoints
4
+ docs/blog/archive/
5
+ docs/examples/archive/
6
+ docs/examples/data/
7
+ dist/
8
+ local/
9
+ tests/
10
+ publish.md
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: prefab
3
- Version: 1.1.4
3
+ Version: 1.1.6
4
4
  Summary: Artificial nanofabrication of integrated photonic circuits using deep learning
5
5
  Project-URL: Homepage, https://prefabphotonics.com
6
6
  Project-URL: Repository, https://github.com/PreFab-Photonics/PreFab
@@ -535,6 +535,8 @@ Description-Content-Type: text/markdown
535
535
 
536
536
  PreFab is a _virtual nanofabrication environment_ that leverages **deep learning** and **computer vision** to predict and correct for structural variations in integrated photonic devices during nanofabrication.
537
537
 
538
+ > **Try Rosette**: Want a more visual experience? Try [Rosette](https://rosette.dev) - our new layout tool with PreFab models built in, designed for rapid chip design.
539
+
538
540
  ## Prediction
539
541
 
540
542
  PreFab predicts process-induced structural variations, including corner rounding, loss of small lines and islands, filling of narrow holes and channels, sidewall angle deviations, and stochastic effects. This allows designers to rapidly prototype and evaluate expected performance pre-fabrication.
@@ -4,6 +4,8 @@
4
4
 
5
5
  PreFab is a _virtual nanofabrication environment_ that leverages **deep learning** and **computer vision** to predict and correct for structural variations in integrated photonic devices during nanofabrication.
6
6
 
7
+ > **Try Rosette**: Want a more visual experience? Try [Rosette](https://rosette.dev) - our new layout tool with PreFab models built in, designed for rapid chip design.
8
+
7
9
  ## Prediction
8
10
 
9
11
  PreFab predicts process-induced structural variations, including corner rounding, loss of small lines and islands, filling of narrow holes and channels, sidewall angle deviations, and stochastic effects. This allows designers to rapidly prototype and evaluate expected performance pre-fabrication.
@@ -1,5 +1,18 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.1.6](https://github.com/PreFab-Photonics/PreFab/releases/tag/v1.1.6) - 2024-12-30
4
+
5
+ - Added Tidy3D fabrication-aware inverse design (FAID) example notebook.
6
+ - Remove buffer from `Device` created with `read.from_sem` method.
7
+ - Handling of extended bounds in `read.from_sem` method.
8
+ - Use OpenCV for morphological operations in `geometry.enforce_feature_size`.
9
+ - Add handling for `None` casee for `BufferSpec` in `Device` constructor.
10
+
11
+ ## [1.1.5](https://github.com/PreFab-Photonics/PreFab/releases/tag/v1.1.5) - 2024-11-05
12
+
13
+ - Fix alignment issue in `Device._device_to_gdstk` method, which is used in `Device.to_gdstk` and `Device.to_gds`.
14
+ - Minor linting fixes.
15
+
3
16
  ## [1.1.4](https://github.com/PreFab-Photonics/PreFab/releases/tag/v1.1.4) - 2024-11-01
4
17
 
5
18
  - Added custom vector-Jacobian product (VJP) for the `predict.predict_array_with_grad` function.
@@ -4,7 +4,7 @@
4
4
  "cell_type": "markdown",
5
5
  "metadata": {},
6
6
  "source": [
7
- "# Generating SEM-Like Images\n"
7
+ "# Generating SEM-like images\n"
8
8
  ]
9
9
  },
10
10
  {
@@ -74,7 +74,7 @@
74
74
  }
75
75
  ],
76
76
  "source": [
77
- "device = pf.shapes.L_grating(height=500, pitch=90)\n",
77
+ "device = pf.shapes.l_grating(height=500, pitch=90)\n",
78
78
  "device.plot(show_buffer=False)"
79
79
  ]
80
80
  },
@@ -193,9 +193,7 @@
193
193
  }
194
194
  ],
195
195
  "source": [
196
- "prediction_bin_rng = prediction.binarize_monte_carlo(\n",
197
- " threshold_noise_std=2, threshold_blur_std=10\n",
198
- ")\n",
196
+ "prediction_bin_rng = prediction.binarize_monte_carlo(noise_magnitude=2, blur_radius=10)\n",
199
197
  "prediction_bin_rng.plot(show_buffer=False)"
200
198
  ]
201
199
  },