{ "info": { "author": "Derek Kita", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Scientific/Engineering :: Electronic Design Automation (EDA)" ], "description": "Linux/OS: [![Build Status](https://travis-ci.org/DerekK88/PICwriter.svg?branch=master)](https://travis-ci.org/DerekK88/PICwriter)\nWindows: [![Build status](https://ci.appveyor.com/api/projects/status/f9q96u9na63hy3ce?svg=true)](https://ci.appveyor.com/project/DerekK88/PICwriter)\nDocumentation: [![Documentation Status](https://readthedocs.org/projects/picwriter/badge/?version=latest)](http://picwriter.readthedocs.io/en/latest/?badge=latest)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n\n# PICwriter README\nPicwriter (Photonic-Integrated-Circuit Writer) is a [Python](https://www.python.org/) module, built above the [gdspy](https://github.com/heitzmann/gdspy) module, aimed at simplifying the process of designing complex masks for photonic integrated circuits through a prebuilt library of easy-to-implement PCells. Supported blocks currently include: \n* waveguides (strip, slot, and sub-wavelength grating)\n* grating couplers (straight and focusing)\n* tapers\n* strip to slot waveguide mode converters\n* directional couplers\n* adiabatic couplers\n* spiral structures (auto-generated from specified waveguide length)\n* 1x2 multi-mode interferometers\n* 2x2 multi-mode interferometers\n* ring & disk resonators with automatic bus waveguide wrapping\n* distributed bragg reflectors\n* Mach-Zehnder interferometers\n* alignment markers (for photolithography and ebeam lithography)\n* metal routes\n* bond pads\n\nStay tuned, more components are coming soon! In the meantime, check out the documentation for this project at [picwriter.readthedocs.io](http://picwriter.readthedocs.io).\n\n## Features\nThe ultimate goal of this module is to reduce the time required to generate photonic integrated circuit mask designs, by extending the functionality of the gdspy library.\n* High-level specification of common building blocks for photonic-integrated circuits\n* Fabrication specific masks. Specify the photoresist type (`'+'` or `'-'`) and fabrication type (such as `'ETCH'`) and PICwriter will generate the appropriate mask files for electron-beam or photolithography.\n* All library components are subclasses of the gdspy Cell class, so gdspy Cell features such as `rotation()`, `copy()`, `flatten()`, `get_bounding_box()`, etc. are all supported.\n\n## Installation\n\n### Dependencies:\nWith a working version of python, all dependencies should be automatically installed through the instructions below.\n\n* [Python](http://www.python.org/) (tested with versions 2.7, 3.4, 3.5, 3.6 for Linux/OS, tested with versions 2.7, 3.4, 3.5, 3.6, 2.7-x64, 3.4-x64, 3.5-x64, 3.6-x64 for Windows.)\n* [gdspy](https://github.com/heitzmann/gdspy) (tested with versions 2.7, 3.4, 3.5, and 3.6)\n* [Numpy](http://numpy.scipy.org/)\n* [SciPy](https://www.scipy.org/)\n* [Python-future](http://python-future.org/) (only for Python 2)\n\n### Linux / OS X\nBoth options should automatically install all dependencies (like gdspy, numpy, etc.).\n\nOption 1: using [pip](https://docs.python.org/3/installing/):\n\n```sh\npip install picwriter\n```\n\nOption 2: download the source from [github](https://github.com/DerekK88/picwriter) and build/install with:\n\n```sh\npython setup.py install\n```\n\n### Windows\n\nThe best way of obtaining the library is by installing the prebuilt binaries.\n\n* First, go to the [gdspy appveyor project page](https://ci.appveyor.com/project/heitzmann/gdspy), then click the python environment that matches your python version and processor type. For example, if you have a 64-bit processor with Python version 3.5 (you can check by running `python --version` in a command prompt) then you would click 'PYTHON=C:\\Python35-x64'. Then, click the **Artifacts** tab and download the corresponding `dist\\gdspy-1.X.X.X.whl` wheel file.\n* Open up a command prompt (type `cmd` in the search bar), navigate to your downloads, then install via:\n\n```sh\npip install dist\\gdspy-1.X.X.X.whl\n```\n\n* Next, install the PICwriter library by following the same procedure as before at the [picwriter appveyor page](https://ci.appveyor.com/project/DerekK88/picwriter) to install the corresponding prebuilt picwriter `.whl` file.\n* In a command prompt, navigate to your downloads and install with pip:\n\n```sh\npip install dist\\picwriter-1.X.X.X.whl\n```\n\nBuilding from source is also possible. For installing gdspy, an appropriate build environment is required for compilation of the C extension modules.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/DerekK88/picwriter", "keywords": "mask writing library", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "picwriter", "package_url": "https://pypi.org/project/picwriter/", "platform": "", "project_url": "https://pypi.org/project/picwriter/", "project_urls": { "Homepage": "http://github.com/DerekK88/picwriter" }, "release_url": "https://pypi.org/project/picwriter/0.5/", "requires_dist": [ "gdspy", "numpy" ], "requires_python": "", "summary": "Mask generation tool", "version": "0.5", "yanked": false, "yanked_reason": null }, "last_serial": 6025309, "releases": { "0.0": [ { "comment_text": "", "digests": { "md5": "f4fb42a9ecd87ba648e2342ff9ed4a83", "sha256": "37e65fdd36ad139de190f17987351777b19cc284b0575855ed9aa64f07a25053" }, "downloads": -1, "filename": "picwriter-0.0-py2.7.egg", "has_sig": false, "md5_digest": "f4fb42a9ecd87ba648e2342ff9ed4a83", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 57155, "upload_time": "2018-02-11T19:54:44", "upload_time_iso_8601": "2018-02-11T19:54:44.886669Z", "url": "https://files.pythonhosted.org/packages/81/a5/bfb996357f5ca2bd7105793cd4f00f9bde9f27c8caaad0ce84c71330945e/picwriter-0.0-py2.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "895bbe61a865ae57129a87a74f6fa051", "sha256": "5c1595567407bd61cd25cf353404c39e5a5c069f1fcc423c540128bff5c5700b" }, "downloads": -1, "filename": "picwriter-0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "895bbe61a865ae57129a87a74f6fa051", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 29262, "upload_time": "2018-02-11T19:54:43", "upload_time_iso_8601": "2018-02-11T19:54:43.638032Z", "url": "https://files.pythonhosted.org/packages/01/d5/5786094080a6d1ecff4695cf9e5f8f98e9fed31acd988fb9f5df20f85f98/picwriter-0.0-py2-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.1": [ { "comment_text": "", "digests": { "md5": "6e13c14bef2ae264d9f4997ef90945eb", "sha256": "62f19b9b04035dcd0ceae40d4f24eae908deaaa5b0323bb8dd514594384310a7" }, "downloads": -1, "filename": "picwriter-0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "6e13c14bef2ae264d9f4997ef90945eb", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 29267, "upload_time": "2018-02-11T19:59:37", "upload_time_iso_8601": "2018-02-11T19:59:37.076911Z", "url": "https://files.pythonhosted.org/packages/58/dd/376bbff1b9b0a1836f6f89cc0858950e7212c14831404335f3f38fb3b364/picwriter-0.1-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a40445532037faa12af95cc788e84517", "sha256": "bda1ac8c0cfd2a36ec3890ad0988e46196699f0939bb6d7508312eb4d457b996" }, "downloads": -1, "filename": "picwriter-0.1.tar.gz", "has_sig": false, "md5_digest": "a40445532037faa12af95cc788e84517", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14191, "upload_time": "2018-02-11T19:59:38", "upload_time_iso_8601": "2018-02-11T19:59:38.530341Z", "url": "https://files.pythonhosted.org/packages/ef/6d/07f8f48b22aba014e195c58cf6a48458ea88373cc5974c694b90ab269e21/picwriter-0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2": [ { "comment_text": "", "digests": { "md5": "cb3081cdc5a31b2d5634b697f0708e15", "sha256": "fd3f32aed59cb2c0da66b09a7028027ca51c10ed037427f97bf6df69f45f7e58" }, "downloads": -1, "filename": "picwriter-0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "cb3081cdc5a31b2d5634b697f0708e15", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 37596, "upload_time": "2018-02-14T21:36:03", "upload_time_iso_8601": "2018-02-14T21:36:03.849123Z", "url": "https://files.pythonhosted.org/packages/f3/3e/4d07e9035d284917e98b395001fe77895c3ca1fdda314a3e7ae2b3624b13/picwriter-0.2-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "728b9d17bdeda0e0ee3eb7addaf2b0ad", "sha256": "6e720b1ba8731cc1b398b8b038210188f3ff327ca0c29cc1673f76c9a5fcf6c3" }, "downloads": -1, "filename": "picwriter-0.2.tar.gz", "has_sig": false, "md5_digest": "728b9d17bdeda0e0ee3eb7addaf2b0ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19420, "upload_time": "2018-02-14T21:36:10", "upload_time_iso_8601": "2018-02-14T21:36:10.745059Z", "url": "https://files.pythonhosted.org/packages/5e/a9/e7f2700cd089ccd6bf759456f2ca5de4aabd0339ab1ce6bede154745ea81/picwriter-0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3": [ { "comment_text": "", "digests": { "md5": "e3f48aaf9548ab79fc54ae6d5a334334", "sha256": "68def8318dbc0840e85ad29f332464fb33f2614d915448182636ac9bd8af0401" }, "downloads": -1, "filename": "picwriter-0.3-py2.7.egg", "has_sig": false, "md5_digest": "e3f48aaf9548ab79fc54ae6d5a334334", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 213678, "upload_time": "2019-01-11T19:29:47", "upload_time_iso_8601": "2019-01-11T19:29:47.141862Z", "url": "https://files.pythonhosted.org/packages/70/d3/a98f45911e6d57786cc6c71e4198935ffa8ae4006b706d692f95842455d5/picwriter-0.3-py2.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "feb1d780576cc6af1cd26bfafef75857", "sha256": "bcc370080e710332cd44f6d595e3e8b1d67a2ced814aeabf465cef6d0284dcd4" }, "downloads": -1, "filename": "picwriter-0.3-py2-none-any.whl", "has_sig": false, "md5_digest": "feb1d780576cc6af1cd26bfafef75857", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 99451, "upload_time": "2019-01-11T19:29:45", "upload_time_iso_8601": "2019-01-11T19:29:45.486738Z", "url": "https://files.pythonhosted.org/packages/db/7e/e36e2a78dad3dca8314a19463d301cedc3dfe2e827de94b39204c19f9ba2/picwriter-0.3-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5856228b0f315bfdab7675b3f7d35146", "sha256": "b5ed306d417784106f21ce7cc5a7ad155aa3e85c296c78af2d15def4993297d2" }, "downloads": -1, "filename": "picwriter-0.3.tar.gz", "has_sig": false, "md5_digest": "5856228b0f315bfdab7675b3f7d35146", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 50652, "upload_time": "2019-01-11T19:29:48", "upload_time_iso_8601": "2019-01-11T19:29:48.685370Z", "url": "https://files.pythonhosted.org/packages/e8/ce/98f634a245269bd1f9bbfd41cf35ea4e45e28f7ef4b93db09eda21e7b2d0/picwriter-0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4": [ { "comment_text": "", "digests": { "md5": "5de226fb38b726de9b72e7a465b3d93f", "sha256": "d2674d0c2c7cd8ce0eb7f2707a5b1cfe8425e151446030b67dd2b4625678be4a" }, "downloads": -1, "filename": "picwriter-0.4-py2.7.egg", "has_sig": false, "md5_digest": "5de226fb38b726de9b72e7a465b3d93f", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 277502, "upload_time": "2019-07-21T23:15:24", "upload_time_iso_8601": "2019-07-21T23:15:24.438885Z", "url": "https://files.pythonhosted.org/packages/29/22/a1f5c80f00c6500a5e2907febc8adf2fb39205a65c700a7dd71daea61d68/picwriter-0.4-py2.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c9a7ebb2e654e90445c42c84162f030a", "sha256": "9928212da2d32db0224ef4e4c1c751db71cf2cd1e5226cdd6d8fe0c70cd8e35a" }, "downloads": -1, "filename": "picwriter-0.4-py2-none-any.whl", "has_sig": false, "md5_digest": "c9a7ebb2e654e90445c42c84162f030a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 127610, "upload_time": "2019-07-21T23:15:22", "upload_time_iso_8601": "2019-07-21T23:15:22.720559Z", "url": "https://files.pythonhosted.org/packages/e9/cd/81fddc5c1cf48287a412d409213260673c4e1e9a0684f8fffc75e616b74a/picwriter-0.4-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5f9b3d33f45fa7aa795680f198669733", "sha256": "5a5df63f20c22b0b2f198433d960ace91ba8091534676e511311da0b4b5ad8c9" }, "downloads": -1, "filename": "picwriter-0.4.tar.gz", "has_sig": false, "md5_digest": "5f9b3d33f45fa7aa795680f198669733", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 63834, "upload_time": "2019-07-21T23:15:26", "upload_time_iso_8601": "2019-07-21T23:15:26.156835Z", "url": "https://files.pythonhosted.org/packages/4b/64/b13de8a35d5bfeb1196942a853c18fbee714fb305fcdb25bc3bfe146caa1/picwriter-0.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5": [ { "comment_text": "", "digests": { "md5": "0bc247b2a88a2d34077d8ae7e31ee754", "sha256": "98447ae65e94d36f27f3829a9522e43725de44109ef67b2c6846039365194972" }, "downloads": -1, "filename": "picwriter-0.5-py3.7.egg", "has_sig": false, "md5_digest": "0bc247b2a88a2d34077d8ae7e31ee754", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 296946, "upload_time": "2019-10-24T18:24:04", "upload_time_iso_8601": "2019-10-24T18:24:04.097576Z", "url": "https://files.pythonhosted.org/packages/b6/46/255dbaa90131117a5659af5a94abb55123b32040c32fac5abba73e4682b2/picwriter-0.5-py3.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e36dd6dbfa439066938b6efe1d218365", "sha256": "4a70528f8441282b2d96db644d8908f75b3b54817dea75a882a9822b9e0bcdfc" }, "downloads": -1, "filename": "picwriter-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e36dd6dbfa439066938b6efe1d218365", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 139731, "upload_time": "2019-10-24T18:24:01", "upload_time_iso_8601": "2019-10-24T18:24:01.349393Z", "url": "https://files.pythonhosted.org/packages/bc/11/8ca1d29fd14b39079f09b04f0e1fad532a60c268a9fa50540f1a9ade1ba0/picwriter-0.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c9b0dae5ef5017e7a2b56a2d0fef633", "sha256": "3a92c5e6414b99add5c4d5b3a833b2b2d88f1fa07c3673f7e06b3634270c100f" }, "downloads": -1, "filename": "picwriter-0.5.tar.gz", "has_sig": false, "md5_digest": "9c9b0dae5ef5017e7a2b56a2d0fef633", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 75033, "upload_time": "2019-10-24T18:24:06", "upload_time_iso_8601": "2019-10-24T18:24:06.169058Z", "url": "https://files.pythonhosted.org/packages/f2/ed/838969668eb0536d535612ad45924f0ef8daf16e2f6248ecfd494df18621/picwriter-0.5.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0bc247b2a88a2d34077d8ae7e31ee754", "sha256": "98447ae65e94d36f27f3829a9522e43725de44109ef67b2c6846039365194972" }, "downloads": -1, "filename": "picwriter-0.5-py3.7.egg", "has_sig": false, "md5_digest": "0bc247b2a88a2d34077d8ae7e31ee754", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 296946, "upload_time": "2019-10-24T18:24:04", "upload_time_iso_8601": "2019-10-24T18:24:04.097576Z", "url": "https://files.pythonhosted.org/packages/b6/46/255dbaa90131117a5659af5a94abb55123b32040c32fac5abba73e4682b2/picwriter-0.5-py3.7.egg", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e36dd6dbfa439066938b6efe1d218365", "sha256": "4a70528f8441282b2d96db644d8908f75b3b54817dea75a882a9822b9e0bcdfc" }, "downloads": -1, "filename": "picwriter-0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e36dd6dbfa439066938b6efe1d218365", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 139731, "upload_time": "2019-10-24T18:24:01", "upload_time_iso_8601": "2019-10-24T18:24:01.349393Z", "url": "https://files.pythonhosted.org/packages/bc/11/8ca1d29fd14b39079f09b04f0e1fad532a60c268a9fa50540f1a9ade1ba0/picwriter-0.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c9b0dae5ef5017e7a2b56a2d0fef633", "sha256": "3a92c5e6414b99add5c4d5b3a833b2b2d88f1fa07c3673f7e06b3634270c100f" }, "downloads": -1, "filename": "picwriter-0.5.tar.gz", "has_sig": false, "md5_digest": "9c9b0dae5ef5017e7a2b56a2d0fef633", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 75033, "upload_time": "2019-10-24T18:24:06", "upload_time_iso_8601": "2019-10-24T18:24:06.169058Z", "url": "https://files.pythonhosted.org/packages/f2/ed/838969668eb0536d535612ad45924f0ef8daf16e2f6248ecfd494df18621/picwriter-0.5.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }