prefab 1.3.0__py3-none-any.whl → 1.4.0__py3-none-any.whl
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.
- prefab/__init__.py +1 -1
- prefab/__main__.py +29 -24
- prefab/compare.py +49 -61
- prefab/device.py +163 -394
- prefab/geometry.py +102 -137
- prefab/models.py +19 -48
- prefab/predict.py +68 -55
- prefab/py.typed +0 -0
- prefab/read.py +57 -303
- prefab/shapes.py +357 -187
- {prefab-1.3.0.dist-info → prefab-1.4.0.dist-info}/METADATA +21 -35
- prefab-1.4.0.dist-info/RECORD +15 -0
- prefab-1.3.0.dist-info/RECORD +0 -14
- {prefab-1.3.0.dist-info → prefab-1.4.0.dist-info}/WHEEL +0 -0
- {prefab-1.3.0.dist-info → prefab-1.4.0.dist-info}/entry_points.txt +0 -0
- {prefab-1.3.0.dist-info → prefab-1.4.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: prefab
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.0
|
|
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
|
|
@@ -518,6 +518,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
518
518
|
Requires-Python: >=3.9
|
|
519
519
|
Requires-Dist: autograd
|
|
520
520
|
Requires-Dist: gdstk>=0.9.55
|
|
521
|
+
Requires-Dist: ipykernel>=6.31.0
|
|
521
522
|
Requires-Dist: matplotlib
|
|
522
523
|
Requires-Dist: numpy
|
|
523
524
|
Requires-Dist: opencv-python-headless
|
|
@@ -527,17 +528,21 @@ Requires-Dist: requests
|
|
|
527
528
|
Requires-Dist: scikit-image
|
|
528
529
|
Requires-Dist: scipy
|
|
529
530
|
Requires-Dist: toml
|
|
530
|
-
|
|
531
|
+
Provides-Extra: dev
|
|
532
|
+
Requires-Dist: jupyter; extra == 'dev'
|
|
533
|
+
Requires-Dist: jupyterlab; extra == 'dev'
|
|
534
|
+
Provides-Extra: docs
|
|
535
|
+
Requires-Dist: mkdocs; extra == 'docs'
|
|
536
|
+
Requires-Dist: mkdocs-material; extra == 'docs'
|
|
537
|
+
Requires-Dist: mkdocstrings[python]; extra == 'docs'
|
|
531
538
|
Description-Content-Type: text/markdown
|
|
532
539
|
|
|
533
540
|
# PreFab
|
|
534
541
|
|
|
535
|
-

|
|
542
|
+

|
|
536
543
|
|
|
537
544
|
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.
|
|
538
545
|
|
|
539
|
-
> **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.
|
|
540
|
-
|
|
541
546
|
## Prediction
|
|
542
547
|
|
|
543
548
|
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.
|
|
@@ -550,57 +555,38 @@ PreFab corrects device designs to ensure that the fabricated outcome closely mat
|
|
|
550
555
|
|
|
551
556
|

|
|
552
557
|
|
|
553
|
-
## Models
|
|
554
|
-
|
|
555
|
-
Each photonic nanofabrication process requires unique models, which are regularly updated with the latest data. The current models include (see the full list in [`docs/models.md`](https://github.com/PreFab-Photonics/PreFab/blob/main/docs/models.md)):
|
|
556
|
-
|
|
557
|
-
| Foundry | Process | Latest Version | Latest Dataset | Model Name |
|
|
558
|
-
| ------- | ------- | ----------------- | ---------------- | ----------- |
|
|
559
|
-
| ANT | NanoSOI | ANF1 (May 6 2024) | d10 (Jun 8 2024) | ANT_NanoSOI_ANF1_d10 |
|
|
560
|
-
| ANT | SiN | ANF1 (May 6 2024) | d1 (Jan 31 2024) | ANT_SiN_ANF1_d1 |
|
|
561
|
-
|
|
562
|
-
> _New models are to be regularly added. Usage may change. For additional foundry and process models, feel free to [contact us](mailto:hi@prefabphotonics.com) or raise an issue._
|
|
563
|
-
|
|
564
558
|
## Installation
|
|
565
559
|
|
|
566
|
-
Install PreFab
|
|
560
|
+
Install PreFab using pip:
|
|
567
561
|
|
|
568
562
|
```sh
|
|
569
563
|
pip install prefab
|
|
570
564
|
```
|
|
571
565
|
|
|
572
|
-
|
|
566
|
+
For contributors who wish to make changes to the source code:
|
|
573
567
|
|
|
574
568
|
```sh
|
|
569
|
+
# Install uv (if not already installed)
|
|
570
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh
|
|
571
|
+
|
|
572
|
+
# Clone and set up the project
|
|
575
573
|
git clone https://github.com/PreFab-Photonics/PreFab.git
|
|
576
574
|
cd PreFab
|
|
577
|
-
|
|
575
|
+
uv sync
|
|
578
576
|
```
|
|
579
577
|
|
|
580
578
|
## Getting Started
|
|
581
579
|
|
|
582
|
-
|
|
580
|
+
Before you can make PreFab requests, you will need to [create an account](https://www.prefabphotonics.com/auth/signup).
|
|
583
581
|
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
To link your account, you will need an token. You can do this by running the following command in your terminal. This will open a browser window where you can log in and authenticate your token.
|
|
582
|
+
To link your account, run the following command to authenticate your token:
|
|
587
583
|
|
|
588
584
|
```sh
|
|
589
585
|
prefab setup
|
|
590
586
|
```
|
|
591
587
|
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
Visit [`/docs/examples`](https://github.com/PreFab-Photonics/PreFab/tree/main/docs/examples) or our [docs](https://docs.prefabphotonics.com/) to get started with your first predictions.
|
|
595
|
-
|
|
596
|
-
## Performance and Usage
|
|
597
|
-
|
|
598
|
-
PreFab models are hosted on a [serverless cloud platform](https://modal.com/). Please keep in mind:
|
|
599
|
-
|
|
600
|
-
- 🐢 Default CPU inference may be slower.
|
|
601
|
-
- 🥶 The first prediction using optional GPU inference may take longer due to cold start server loading. Subsequent predictions will be faster.
|
|
602
|
-
- 😊 Please be considerate of usage. Start with small tasks and limit usage during the initial stages. Thank you!
|
|
588
|
+
Visit [`/docs/examples`](https://github.com/PreFab-Photonics/PreFab/tree/main/docs/examples) or our [documentation](https://docs.prefabphotonics.com/) to get started with your first predictions.
|
|
603
589
|
|
|
604
590
|
## License
|
|
605
591
|
|
|
606
|
-
|
|
592
|
+
LGPL-2.1 © PreFab Photonics
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
prefab/__init__.py,sha256=z_ADiFh2q1068jMziubytwv4G1_Wh8wYa3hQCm61Mh8,425
|
|
2
|
+
prefab/__main__.py,sha256=M5ulRfgSMdPjeHPoMGQ3P86zFMJDII5I18NGrpFUcsM,3458
|
|
3
|
+
prefab/compare.py,sha256=aX7nr9tznSebYeeztvqIPz57npnJ4-iUeKEedrZdksE,3676
|
|
4
|
+
prefab/device.py,sha256=1O6vTOq4wQRGVYvFWLH0uj1XhhYCfnDnIapDEYnBKHw,47996
|
|
5
|
+
prefab/geometry.py,sha256=-nTaGjdw3KN1SVoyvqdcrE2GJP7OqPF6ivUhrO78rUk,11244
|
|
6
|
+
prefab/models.py,sha256=YORoAPYC0r60yDShmrZdWOEh9jEBcBMizx4aj8ik27U,2047
|
|
7
|
+
prefab/predict.py,sha256=066X_SnSIHPqaPMbk0Yn_yX_KBfUc9yxrsmP_k56FU0,19015
|
|
8
|
+
prefab/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
9
|
+
prefab/read.py,sha256=5BmvFemobA72urxs4j2VZRVvanZZGu1mDB1Uh-epyvI,8635
|
|
10
|
+
prefab/shapes.py,sha256=mRGwsPS-A9XsW3jgvUuMCEeNv9BLXsEnJkytlIHUAKE,28802
|
|
11
|
+
prefab-1.4.0.dist-info/METADATA,sha256=1pJWOHiZZ58App0zlSB2rK-3pzV07IO51baZ9ryl-O0,33880
|
|
12
|
+
prefab-1.4.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
13
|
+
prefab-1.4.0.dist-info/entry_points.txt,sha256=h1_A9O9F3NAIoKXD1RPb3Eo-WCSiHhMB_AnagBi6XTQ,48
|
|
14
|
+
prefab-1.4.0.dist-info/licenses/LICENSE,sha256=IMF9i4xIpgCADf0U-V1cuf9HBmqWQd3qtI3FSuyW4zE,26526
|
|
15
|
+
prefab-1.4.0.dist-info/RECORD,,
|
prefab-1.3.0.dist-info/RECORD
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
prefab/__init__.py,sha256=l9aFRS6H9RKpzotuXz_qmSOvW1Fdvo_tlH2vuUOa8VE,425
|
|
2
|
-
prefab/__main__.py,sha256=1eXWiEoG7eetJMm1qRbK2I5MnzuRgKIoQtBeT-Ps8es,3523
|
|
3
|
-
prefab/compare.py,sha256=0Xgp3tFuP4of-ce9Opc19p8i8lIyXkbVGLuwWBaHSeE,3486
|
|
4
|
-
prefab/device.py,sha256=7SiawFa103ebFqii3CWy_vPO6ixigVliO6A58hoOqkU,55414
|
|
5
|
-
prefab/geometry.py,sha256=fvMSJpDAqxWShhKojPGnXdB4otrBn54kbW8uk1T4Wwk,12104
|
|
6
|
-
prefab/models.py,sha256=waPNGtuISyY0f8cz7dnbD451CKYCt8EpPGt-4lSOPNU,2581
|
|
7
|
-
prefab/predict.py,sha256=jtB18QOlPINJRqUZCwnuMOfPuuwE1s2e353X5g3njd4,18349
|
|
8
|
-
prefab/read.py,sha256=WNqC3xENlndzFwXeCF2E7H3Iq2dO_6rPEPZ58DuloqY,16259
|
|
9
|
-
prefab/shapes.py,sha256=58cyXFNh1kEErq2jEbGd3dWSediU1OSmor_FWwc1V8A,25098
|
|
10
|
-
prefab-1.3.0.dist-info/METADATA,sha256=Xvbt_umsD1mZY1S9phLLABxbR18MCuw4disk81IUslY,35025
|
|
11
|
-
prefab-1.3.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
12
|
-
prefab-1.3.0.dist-info/entry_points.txt,sha256=h1_A9O9F3NAIoKXD1RPb3Eo-WCSiHhMB_AnagBi6XTQ,48
|
|
13
|
-
prefab-1.3.0.dist-info/licenses/LICENSE,sha256=IMF9i4xIpgCADf0U-V1cuf9HBmqWQd3qtI3FSuyW4zE,26526
|
|
14
|
-
prefab-1.3.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|