Gérez le format GDS II avec Python

introduction

GDSII (GDS) est connu comme un format CAO pour la mise en page des CI et des MEMS. L'auteur utilise GDS pour créer des MEMS et des métasurfaces. GDS peut également être créé directement avec des logiciels de CAO de masques tels que Layout Editor et KLayout ~~ (riche) Peut être converti à partir de fichiers dxf qui peuvent être gérés par AutoCAD, Solidworks, etc. w) ~~ en utilisant Cadence, mais il est pratique d'appliquer un langage de programmation à des motifs qui peuvent être décrits à l'aide de formules mathématiques. Je dessine GDS en Perl en référence à la page de JAXA Mita-sensei depuis longtemps, mais ces dernières années, la taille du fichier CAO est devenue gonflée. , Je ressens souvent les limites de Perl [^ 1]. Par conséquent, depuis 2019, GDS est créé en Python. Ici, je décrirai le savoir-faire pour créer un fichier GDS en Python.

Sélection d'une bibliothèque pour gérer GDSII en Python

Plusieurs bibliothèques ont été proposées pour gérer le format GDSII en Python, mais ma recommandation est gdspy. Pour énumérer les bibliothèques connues,

Installation de gdspy dans l'environnement Anaconda sous Windows 10

Cette section décrit les paramètres d'environnement pour créer un fichier gds avec gdspy sur une machine Windows pour le moment.

  1. Installation d'Anaconda 3 https://www.python.jp/install/centos/anaconda/install.html Installez tout en regardant.

  2. Mettez à jour Anaconda 3 (exécutez le cas échéant) Depuis Windows-> cmd.exe (invite de commande) > conda update --all

  3. Configuration de l'environnement pour gds Si l'environnement conda et l'environnement pip sont mélangés il semble que quelque chose ne fonctionnera pas, donc juste au cas où, créez un nouvel environnement dans Anaconda 3. Utilisez un nom tel que gdsii. 3-1. Installez les modules nécessaires pour gdspy. numpy cython pip spyder

  4. Introduction de gdspy À l'URL suivante https://qiita.com/mckeeeen/items/d4cbe4a16a102157f40c Exécutez «Installer le package avec pip dans l'environnement Anaconda» pour installer gdspy.

À partir de Windows-> cmd.exe (invite de commande), exécutez ce qui suit. (La ligne> indique l'entrée de commande)

>conda info -e # conda environments: # base * C:\Users\k_iwa\Anaconda3

> source activate base <-Le nom ici (base) est l'environnement pour gdspy introduit dans 3.

  1. Installation de gdspy

> pip install gdspy

Si vous n'avez pas installé l'environnement du compilateur C ++ (par exemple, Build Tools for Visual Studio 2019) ou des bibliothèques telles que cython, vous pouvez installer gdspy. Cela ne fonctionne pas correctement. Si cela ne fonctionne pas, désinstallez-le avec pip uninstall gdspy, préparez la bibliothèque et réinstallez-la.

  1. Utilisez gdspy d'Anaconda 3 en utilisant un environnement Python IDE tel que Spyder. La documentation est ici. La notation a considérablement changé depuis gdspy 1.5 (20, déc., 2019). Détails à l'avenir.

[^ 1]: Lorsqu'il dépasse 600 Mo, une erreur se produit en Perl et GDS ne peut pas être émis. Je ne savais pas pourquoi.

Recommended Posts

Gérez le format GDS II avec Python
Gérez les données au format NetCDF avec Python
format en python
Format d'image en Python
Gérer le démarquage avec python
Gérer les données ambiantes en Python
Formatez facilement JSON avec Python
Gérer les variables d'environnement en Python
Gérer les nombres complexes en Python
Formater automatiquement le code Python avec Vim
Gérer les files d'attente de messages posix en python
Comment gérer le japonais avec Python
Gérez plusieurs versions de python en un seul jupyter
Téléchargez des fichiers dans n'importe quel format en utilisant Python
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
Format de chaîne Python
Méta-analyse en Python
Unittest en Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
Plink en Python
Constante en Python
FizzBuzz en Python
Sqlite en Python
Étape AIC en Python
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Format de chaîne Python
Constante en Python
nCr en Python.
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
[Introduction à Python] Comment gérer les données au format JSON
Utilisez un module de cryptographie qui gère OpenSSL en Python
Gérer les fichiers zip avec des noms de fichiers japonais dans Python 3
Comment gérer le type datetime dans sqlite3 de python