当前位置: 首页 > article >正文

Lumerical脚本——创建基本结构

一、矩形、梯形以及环形的构建

switchtolayout;
selectall;
delete;
um = 1e-6;
nm = 1e-9;

addrect();
set("x min",0);
set("x max",4*um);
set("y min",0);
set("y max",2*um);
set("z",0);
set("z span",2*um);

addpoly();
w1 = 2*um;
w2 = 3*um;
l = 2*um;
# 选取参考点
set("x",4*um);
set("y",0*um);
set("z",0);
set("z span",2*um);
# 以参考点为参考,选取顶点,顺时针创建
V=[0,w1;l,w2;l,0;0,0];
set("vertices",V);
set("material","SiO2 (Glass) - Palik");

addring();
# 选取参考点
set("x",6*um);
set("y",-2*um);
set("z",0);
set("z span",2*um);
set("inner radius",2*um);
set("outer radius",5*um);
set("theta start",0);
set("theta stop",90);

二、 S弯曲、90°弯曲及Y分支

2.1 S弯曲

switchtolayout;
selectall;
delete;
um = 1e-6;
nm = 1e-9;

# S弯曲
addwaveguide();
w = 2*um;
l = 4*um;
#选取参考点
set("x",0);
set("y",0);
set("z",0);
V = [-l,-w;0,-w;0,w;l,w];
set("poles",V);
set("base width",3*um);
set("base height",3*um);
set("base angle",45);

2.2 90°弯曲

 

switchtolayout;
selectall;
delete;
um = 1e-6;
nm = 1e-9;

# 90°弯曲
addwaveguide();
r = 6*um;
a = 0.6;
#选取参考点
set("x",0);
set("y",0);
set("z",0);
V = [0,r;r*a,r;r,r*a;r,0];
set("poles",V);
set("base width",3*um);
set("base height",3*um);
set("base angle",90);

2.3 Y分支

switchtolayout;
selectall;
delete;
um = 1e-6;
nm = 1e-9;

# Y分支
# 上半部分
addwaveguide();
l = 10*um;
w = 2*um;
#选取参考点
set("x",4*um);
set("y",2*um);
set("z",0);
V = [-l,-w;0,-w;0,w;l,w];
set("poles",V);
set("base width",1*um);
set("base height",1*um);
set("base angle",90);
# 下半部分
addwaveguide();
#选取参考点
set("x",4*um);
set("y",-2*um);
set("z",0);
V = [-l,w;0,w;0,-w;l,-w];
set("poles",V);
set("base width",1*um);
set("base height",1*um);
set("base angle",90);






http://www.kler.cn/a/405533.html

相关文章:

  • WebApis学习笔记,第二节:高级语法
  • JVM(五、垃圾回收器)
  • 游戏陪玩系统开发功能需求分析
  • 2024年亚太数学建模竞赛问题C宠物产业及相关产业发展分析与对策
  • H.264/H.265播放器EasyPlayer.js视频流媒体播放器关于websocket1006的异常断连
  • C++桥接模式在使用时需要注意什么
  • comprehension
  • python文件对象方法
  • @PermitAll注解和@PreAuthorize注解
  • Next.js 开发教程(三):CSS 样式的完整指南
  • VLAN资源池(Java Python JS C++ C )
  • 如何在 React 项目中应用 TypeScript?应该注意那些点?结合实际项目示例及代码进行讲解!
  • 已解决centos7 yum报错:cannot find a valid baseurl for repo:base/7/x86_64的解决方案
  • 【c++笔试强训】(第十六篇)
  • JAVA八股与代码实践----接口与抽象类的区别和用法
  • 利用KDJ指标显示多空K线(附带源码)
  • Unity3D 客户端网络角色的操作与行为分离设计详解
  • 一文详解kafka知识点
  • LayaAir引擎荣获开源大赛一等奖
  • Linux下pwm开发与框架源码分析
  • javaScript之箭头函数
  • 阿里推理模型来了!Marco-o1 发布即开源
  • 飞凌嵌入式T113-i开发板RISC-V核的实时应用方案
  • 记录一个奇怪的前端布局现象
  • 后台通用tag面包屑
  • Figma入门-文字、样式、链接、动作