ipkiss专题

IPKISS 服务器部署环境如何找到 get_technology() 目录

IPKISS 服务器部署环境如何找到 get_technology 目录 引言正文 引言 随着对 IPKISS 了解的加深,作者本人逐渐开始探索 IPKISS 的 TECH 目录,IPKISS 版图绘制中所有重要的参数几乎都被收集在了这个目录下。本文,我们将介绍如何进入到这个目录中查看对应的参数。 正文 首先我们需要明确,get_technology() 方法实际上进入的是

luceda ipkiss教程 71:统计线路中器件的个数

**案例分享:**统计线路中某一器件的个数 如,统计SplitterTree中mmi的个数: 所有代码如下: # Copyright (C) 2020 Luceda Photonicsfrom si_fab import all as pdkfrom ipkiss3 import all as i3class GeneralizedSplitterTree(i3.Circuit):spli

luceda ipkiss教程 67:修改器件端口名

如果要替换线路中的器件,但是要替换的器件端口名称又不一样,那该怎么办呢?去对应改线路中端口的名称太过繁琐,这就需要需要器件的端口名,如: 改y分束器的端口名 改了端口名称,线路中的器件就可以直接替换了: 将线路中的mmi替换为y分束器: 所有代码如下: # Copyright (C) 2020 Luceda Photonicsfrom si_fab import all as pdk

luceda ipkiss教程 69:导出器件或者线路的三维模型

ipkiss 3.12版加入write_obj函数,可以直接输出器件的三维模型。 如,输出自定义的mmi的三维模型: 代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3class MMI1x2(i3.PCell):"""MMI with 1 input and 2 outputs."""_name_prefix

luceda ipkiss教程 68:通过代码模板提高线路设计效率

在用ipkiss设计器件或者线路时,经常需要输入: from ipkiss3 import all as i3 那么有什么办法可以快速输入这段代码呢?这里就可以利用Pycharm的 live template功能,只需要将文件:ipkiss.xml (luceda ipkiss教程 68:通过代码模板提高线路设计效率,在上面可以下载) 文件拷贝到: 文件中,重新打开PyCharm 就可以实现

IPKISS Tutorial 目录(持续更新中)

IPKISS Tutorial 目录 目录 目录 IPKISS ------ 版图绘制框架模式 i3.Circuit IPKISS ------ ChildCellProperty() 和 Grating Coupler

IPKISS ------ 查看器件默认端口名称

IPKISS ------ 查看器件默认端口名称 正文 正文 我们这里以 Grating Coupler 举例。 import si_fab.all as pdkimport ipkiss3.all as i3class MyGratingCoupler(i3.circuit):gc = i3.childcellProperty(<

luceda ipkiss教程 59:画圆形螺旋线2

案例分享:画同端口螺旋线 代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3import numpy as npclass Spiral(i3.PCell):_name_prefix = "Spiral_C"width = i3.PositiveNumberProperty(doc="Core width of

luceda ipkiss教程 58:输出器件的版图和三维模型

在ipkiss中,通过visualize_3d_povray可以输出包含器件的三维模型参数的.pov文件,再通过POV-Ray(免费软件,下载地址:https://www.povray.org/download/)就可以查看器件的三维模型。 如: 代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3import

luceda ipkiss教程 57:画微环调制器

案例分享:画微环调制器 全部代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3class DC(i3.PCell):straight_length = i3.PositiveNumberProperty(default=200)radius = i3.PositiveNumberProperty(default=5

luceda ipkiss教程 53:在版图上加中文

要在版图上加中文,如: 可以通过如下方法实现: 首先,可以在ppt中加入文本框,在文本框中输入想要加到版图上的中文内容,如,复旦大学,并将文本框存为windows位图。 其次,通过如下代码就可以得到中文对应的版图: # Copyright (C) 2021 Lucedafrom technologies import silicon_photonicsimport ipkiss3.all

luceda ipkiss教程 48:求线路中波导的总长度

当线路中有多条波导时,可以一次输出所有波导的总长度: 如: 代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3class MZI_Lattice(i3.Circuit):mmi = i3.ChildCellProperty()mmi_spacing = i3.PositiveNumberProperty(defa

luceda ipkiss教程 46:在版图上添加器件阵列

通过ARef函数可以在版图上快速添加器件阵列: 代码如下: from si_fab import all as pdkfrom ipkiss3 import all as i3class PAD_array(i3.PCell):class Layout(i3.LayoutView):def _generate_instances(self, insts):insts += i3.ARef(n

luceda ipkiss教程 43:画渐变圆弧型波导

案例分享: from si_fab import all as pdkimport ipkiss3.all as i3from ipcore.properties.restrictions import RestrictTuplefrom ipkiss.geometry.shapes.modifiers import __ShapePathBase__import numpy as n

luceda ipkiss教程 43:画渐变圆弧型波导

案例分享: from si_fab import all as pdkimport ipkiss3.all as i3from ipcore.properties.restrictions import RestrictTuplefrom ipkiss.geometry.shapes.modifiers import __ShapePathBase__import numpy as n

luceda ipkiss教程 42:获取版图所有的电端口

通过判断版图端口的domain.name,可以知道端口是电端口还是光端口: 如: 可以通过如下代码获取两个电端口(anode和cathode)的信息: from si_fab import all as pdkdef get_electrical_ports(layout):ports = layout.portselectrical_ports = []for port in ports:i

luceda ipkiss教程 41:画跑道型微环

利用picazzo库中的方向耦合器绘制跑道型微环: from si_fab import all as pdkfrom ipkiss3 import all as i3from picazzo3.wg.dircoup import StraightDirectionalCouplerclass RingResonator(i3.PCell):trace_template = i3.Tra

luceda ipkiss教程 41:画跑道型微环

利用picazzo库中的方向耦合器绘制跑道型微环: from si_fab import all as pdkfrom ipkiss3 import all as i3from picazzo3.wg.dircoup import StraightDirectionalCouplerclass RingResonator(i3.PCell):trace_template = i3.Tra

luceda ipkiss教程 39:修改版图text字体的粗细

通过修改font的line_width就可以修改版图中text字体的粗细: 代码如下: from si_fab import all as pdkimport ipkiss3.all as i3class demo(i3.PCell):class Layout(i3.LayoutView):def _generate_elements(self, elems):elems += i3.Pol

IPKISS Tutorials 2------导入IPKISS模块

IPKISS Tutorials 2------导入IPKISS模块 方法1方法2 与教程 1 中的导入方法一致,我们可以使用如下代码导入 IPKISS 模块。 方法1 from ipkiss3 import all as i3 方法2 import ipkiss3.all as i3 如果大家觉得有用,就点个赞让更多的人看到吧~

luceda ipkiss教程 1:软件环境配置

在 Luceda Control Center 中 点开 Code Editer 进入 PyCharm后,需要在PyCharm中为工程文件选择以下路径的编译器;C:\luceda\ipkiss_390_py3\python\envs\ipkiss3\python.exe(默认ipkiss装在C盘) 设置如下: 1、点击左上角File,在下拉菜单中点击设置(Settings) 2、在Projec