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

Ansys Lumerical | 用于增强现实系统的表面浮雕光栅

在本示例中,我们使用 RCWA 求解器设计了一个斜面浮雕光栅 (SRG),它将用于将光线耦合到单色增强现实 (AR) 系统的波导中。光栅的几何形状经过优化,可将正常入射光导入-1 光栅阶次。
然后我们将光栅特性导出为 Lumerical Sub-Wavelength Model (LSWM) JSON 格式,以便在 Speos 的系统级仿真中对 SRG 进行建模(请参阅 "Augmented Reality Optical System”).

图片

概述

图片

SRG 几何图形根据其倾斜角度、填充因子和高度进行参数化,如下所示:

图片

光栅和基板的折射率为1.8。光栅被空气包围。周期固定在 393 nm。
将对光栅进行优化,以将波长为 550 nm 的光传输到 -1 光栅阶次。RCWA 求解器用于SRG的优化和完整的特性描述,具体包含定义仿真参数和运行仿真这两个步骤。

第 1 步:耦合光栅的优化

使用内置的粒子群优化(PSO)实用程序,优化SRG的倾斜角、填充因子和光栅高度,以最大限度地提高在法向入射时 550 nm波长下S偏振的透射率。

第 2 步:完整特性描述和数据导出

光栅优化是使用来自光栅上方的正常入射光进行的。但是,一旦选择了优化的几何结构,就必须针对光线追踪仿真中预期的入射角范围以及前进和后退方向计算完整的光栅特性。然后将结果导出到一个 JSON 文件,该文件可以使用脚本在 Speos 或 Zemax 中使用。

运行和结果

第 1 步:优化 SRG 几何结构

  1. 打开并运行模拟文件 ar_srg.fsp 

  2. 右键单击“grating_orders”结果,然后选择“ 新建可视化工具 >可视化 ”。

  3. 单击并拖动绘图以放大“Ts_grating”结果(绿线)。

图片

这些结果表明,初始设计将大约56%的正常入射S偏振光引导到-1光栅阶次。现在,我们将使用优化实用程序优化 光栅几何结构以增加此值。

  1. 在“优化和扫描”窗口中运行优化对象“optimization”。

  2. 优化完成后,通过右键单击“优化”对象并选择“应用最佳解决方案”来应用最佳 几何图形。

“优化”对象将优化 SRG 的倾斜角度、填充因子和光栅高度,这些被定义为“slanted_grating” 结构组 的参数。传输到 S 偏振的 -1 光栅阶次中的功率用作品质因数 (FOM),如“优化”对象的 FOM 脚本中定义。结果如下所示:

图片

在优化几何结构下,-1光栅阶数的衍射效率约为94.7%。

请注意,这种类型的光栅可以具有此FOM的多个局部最大值[1]。虽然内置的PSO工具是一种方便的快速优化方法,但可以使用更高级的优化方法来充分探索参数空间。有关详细信息,请参阅进一步使用模型部分。

第 2 步:完整特性描述和数据导出

  • 传播方向 :两者

  • 入射角 :范围

  • 最小θ :0

  • 最大θ :85

  • θ点 :18

  • 最小 phi :0

  • 最大 phi :360

  • PHI点 数 :37

  1. 在同一模拟文件中,为“RCWA”对象设置以下属性:

  2. 通过单击工具栏中的“运行”按钮来运行 RCWA 模拟。

  3. 运行脚本 LSWM_JSON_export.lsf 。

在此步骤中,针对前向和后向的指定入射角范围计算优化 SRG的S参数。然后将这些结果导出为适合使用脚本文件导入Speos或Zemax的LSWM JSON格式。

使用参数更新模型

光栅几何形状

SRG 几何体被定义为结构组 ,这使得创建用户指定的几何体参数(如倾斜角度和填充因子)变得更加容易。用户可以通过更改结构组的设置脚本来修改此 SRG 几何形状,例如在光栅上添加欠蚀刻或过度蚀刻。或者,可以通过添加新的结构组并编写自定义安装脚本来创建不同的光栅几何体。

优化参数

优化变化的参数及其边界在优化扫描对象中定义。这些可以通过右键单击“优化”对象并选择“编辑”来更改。仿真对象的几乎任何属性都可以用作优化参数,但通常使用用户在结构组或分析组中创建的几何参数。

进一步发展模型

自定义优化品质因数

在本例中,SRG针对单一波长和入射角进行了优化。但是,也可以使用包含一系列波长或入射角的FOM,例如在整个视场上进行优化。

为此,请指定要包含在 RCWA 求解器对象的 FOM 中的波长和入射角。RCWA 求解器的结果将作为数据集返回,其中波长/频率、θ 和 phi 作为参数。然后,可以在优化扫描对象的 FOM 脚本中处理结果,以计算包含完整范围的 FOM。请注意,FOM 最终必须是优化实用程序的单个实数。

替代优化技术

内置的优化实用程序使用粒子群优化方法,用于该光栅的优化。 但是,可以通过Ansys optiSLang使用更高级的优化技术,也可以通过Lumerical Python API使用Python 库。用户还可以通过脚本使用内置实用程序定义不同的优化方法。参数空间的初始探索也可以使用参数扫描工具执行。

相关出版物

  1. Jonathan S. Maikisch 和 Thomas K. Gaylord,“最佳平行面倾斜表面浮雕光栅”,Appl. Opt. 46, 3674-3681 (2007)

相关文章:

Ansys Lumerical | 用于增强现实系统的表面浮雕光栅

在本示例中,我们使用 RCWA 求解器设计了一个斜面浮雕光栅 (SRG),它将用于将光线耦合到单色增强现实 (AR) 系统的波导中。光栅的几何形状经过优化,可将正常入射光导入-1 光栅阶次。 然后我们将光栅特性导出为 Lumerical Sub-Wavelength Model …...

QT day3作业

1.思维导图 2、 完善对话框,点击登录对话框,如果账号和密码匹配,则弹出信息对话框,给出提示”登录成功“,提供一个Ok按钮,用户点击Ok后,关闭登录界面,跳转到其他界面 如果账号和密…...

【Ubuntu】设置永不息屏与安装 dconf-editor

方式一、GUI界面进行设置 No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 20.04.6 LTS Release: 20.04 Codename: focal打开 Ubuntu 桌面环境的设置菜单。你可以通过点击屏幕右上角的系统菜单,然后选择设置。在设置菜单中,…...

gRPC 的原理 介绍带你从头了解gRPC

gRPC 的原理 什么是gRPC gRPC的官方介绍是:gRPC是一个现代的、高性能、开源的和语言无关的通用 RPC 框架,基于 HTTP2 协议设计,序列化使用PB(Protocol Buffer),PB 是一种语言无关的高性能序列化框架,基于 HTTP2PB 保…...

Apriori算法

Apriori算法由R. Agrawal和R. Srikant于1994年在数据集中寻找布尔关联规则的频繁项集。该算法的名称是Apriori,因为它使用了频繁项集属性的先验知识。我们应用迭代方法或逐层搜索,其中k-频繁项集用于找到k1个项集。 为了提高频繁项集逐层生成的效率&…...

肖sir__linux讲解(2.1)

linux命令 cp 复制命令 a、cp 原文件名称 新文 件名称(不存在的文件) 案例:cp a k 截图: b.cp 原文件名称 原有文 件名称(存在的文件) 案例:cp a b 截图: c、cp 指定路径复制 格式&#xff…...

The ultimate UI kit and design system for Figma 组件库下载

Untitled UI 是世界上最大的 Figma UI 套件和设计系统。可以启动任何项目,为您节省数千小时,并祝您升级为专业设计师。 采用 100% 自动布局 5.0、变量、智能变体和 WCAG 可访问性精心制作。 900全局样式、变量:超级智能的全局颜色、排版和效…...

Selenium——利用input标签上传文件

Selenium利用input标签上传文件 完整流程 打开文件上传页面选择要上传的文件点击上传按钮确认文件上传成功介绍怎么方便的获取对应元素的Xpath或者Css 简单介绍 在使用Selenium进行浏览器自动化测试时,文件上传是一个常见的需求。而 标签就是实现文件上传功能的…...

C++初阶 日期类的实现(下)

目录 一、输入输出(>>,<<)重载的实现 1.1初始版 1.2友元并修改 1.2.1简单介绍下友元 1.2.2修改 1.3>>重载 二、条件判断操作符的实现 2.1操作符的实现 2.2!操作符的实现 2.3>操作符的实现 2.4>,<,<操作符的实现 三、日期-日期的实现 …...

大师学SwiftUI第16章 - UIKit框架集成

其它相关内容请见​​虚拟现实(VR)/增强现实(AR)&visionOS开发学习笔记​​ SwiftUI是一套新框架&#xff0c;因此并没有包含我们构建专业应用所需的所有工具。这意味着我们会需要求助于UIKit&#xff08;移动设备&#xff09;和AppKit&#xff08;Mac电脑&#xff09;等原…...

7.docker运行redis容器

1.准备redis的配置文件 从上一篇运行MySQL容器我们知道&#xff0c;需要给容器挂载数据卷&#xff0c;来持久化数据和配置&#xff0c;相应的redis也不例外。这里我们以redis6.0.8为例来实际说明下。 1.1 查找redis的配置文件redis.conf 下面这个网址有各种版本的配置文件供…...

unity教程

前言 伴随游戏行业的兴起&#xff0c;unity引擎的使用越来越普遍&#xff0c;本文章主要记录博主本人入门unity的相关记录大部分依赖siki学院进行整理。12 一、认识unity引擎&#xff1f; 1、Unity相关信息&#xff1a; Unity的诞生&#xff1a;https://www.jianshu.com/p/550…...

未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘Link‘

报错 检查对函数"Link"得调用中是否缺失参数或参数数据类型不正确。 未定义与"double"类型的输入参数相对应的函数"Link"。 问题描述 网上搜了搜一般说是toolbox没有下载导致的&#xff0c;相当于调用的包本地没有。 但是我看看了 Robotics…...

为什么Transformer模型中使用Layer Normalization(Layer Norm)而不是Batch Normalization(BN)

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…...

Vite - 配置 - 文件路径别名的配置

为什么要配置别名 别名的配置&#xff0c;主要作用是为了缩短代码中的导入路径。例如有如下的项目目录&#xff1a; project-name| -- src| -- a| --b| --c| --d| --e| -- abc.png| -- index.html| -- main.js如果想在 main.js 文件中使用 abc.png ,则使用的路径是 &#xff1…...

phpStorm Xdebug调试 加FireFox浏览器

步骤1&#xff1a; [Xdebug] zend_extension“D:\phpstudy_pro\Extensions\php\php5.4.45nts\ext\php_xdebug.dll” xdebug.collect_params1 xdebug.collect_return1 xdebug.remote_enableOn xdebug.remote_hostlocalhost xdebug.remote_port9001 xdebug.remote_handlerdbgp ;…...

多维时序 | MATLAB实现PSO-BiGRU-Attention粒子群优化双向门控循环单元融合注意力机制的多变量时间序列预测

多维时序 | MATLAB实现PSO-BiGRU-Attention粒子群优化双向门控循环单元融合注意力机制的多变量时间序列预测 目录 多维时序 | MATLAB实现PSO-BiGRU-Attention粒子群优化双向门控循环单元融合注意力机制的多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 …...

linux配置固定ip(两种方法)

首先刚下载的vm&#xff0c;刚创建的虚拟机&#xff0c;肯定是需要配置ip的 其次以前我的每次都是设置自动ip&#xff0c;这样每次登录都会自动获取ip地址&#xff0c;并且每次的ip都不相同。 ~方法&#xff1a; 开机登陆后 1)Cd /etc/sysconfig/network-scripts 2)Vi ifcf…...

什么是缓存雪崩、击穿、穿透?

背景 数据一般是存储于数据库中&#xff0c;数据库中的数据都是存在磁盘上的&#xff0c;磁盘读写的速度相较于内存或者CPU中的寄存器来说是非常慢的了。 如果用户的请求都直接访问数据库的话&#xff0c;请求数量一上来&#xff0c;数据库很容易就崩溃了&#xff0c;所以为了…...

可以通过电脑远程控制安卓设备的软件

有些时候&#xff0c;我们需要用电脑远程控制安卓设备&#xff0c;比如远程维护门店设备、安卓系统的户外广告牌等等。我们来探索和比较几款允许用户通过电脑远程控制安卓设备的软件。 1、Splashtop Business Splashtop 是一种多功能远程访问解决方案&#xff0c;以其高性能流…...

HP惠普暗影精灵9笔记本电脑OMEN by HP Transcend 16英寸游戏本16-u0000原厂Windows11系统

惠普暗影9恢复出厂开箱状态&#xff0c;原装出厂Win11-22H2系统ISO镜像 下载链接&#xff1a;https://pan.baidu.com/s/17ftbBHEMFSEOw22tnYvPog?pwd91p1 提取码&#xff1a;91p1 适用型号&#xff1a;16-u0006TX、16-u0007TX、16-u0008TX、16-u0009TX、16-u0017TX 原厂系…...

vue2+elementUI 仿照SPC开发CPK分析工具

源码地址请访问 Vue CPK分析工具页面设计源码&#xff08;支持左右可拖拽和表格可编辑、复制粘贴&#xff09;仿照SPC开发-CSDN博客...

云ES使用集群限流插件(aliyun-qos)

aliyun-qos插件是阿里云Elasticsearch团队自研的插件,能够提高集群的稳定性。该插件能够实现集群级别的读写限流,在关键时刻对指定索引降级,将流量控制在合适范围内。例如当上游业务无法进行流量控制时,尤其对于读请求业务,可根据aliyun-qos插件设置的规则,按照业务的优先…...

2023.11.17 hadoop之HDFS进阶

目录 HDFS的机制 元数据简介 元数据存储流程:namenode 生成了多个edits文件和一个fsimage文件 edits和fsimage文件 SecondaryNameNode辅助NameNode的方式: HDFS的存储原理 写入数据原理: 发送写入请求,获取主节点同意,开始写入,写入完成 读取数据原理:发送读取请求,获取…...

如何在el-tree懒加载并且包含下级的情况下进行数据回显-01

在项目中做需求&#xff0c;遇到一个比较棘手的问题&#xff0c;el-tree懒加载在包含下级的时候&#xff0c;需要做回显&#xff0c;将选中的数据再次勾选上&#xff0c;在处理这个需求的时候有两点是比较困难的&#xff1a; el-tree是懒加载的&#xff0c;包含下级需要一层一…...

系列六、JVM的内存结构【栈】

一、产生背景 由于跨平台性的设计&#xff0c;Java的指令都是根据栈来设计的&#xff0c;不同平台的CPU架构不同&#xff0c;所以不能设计为基于寄存器的。 二、概述 栈也叫栈内存&#xff0c;主管Java程序的运行&#xff0c;是在线程创建时创建&#xff0c;线程销毁时销毁&…...

技巧篇:在Pycharm中配置集成Git

一、在Pycharm中配置集成Git 我们使用git需要先安装git工具&#xff0c;这里给出下载地址&#xff0c;下载后一路直接安装即可&#xff1a; https://git-for-windows.github.io/ 0. git中的一些常用词释义 Repository name&#xff1a; 仓库名称 Description(可选)&#xff1a;…...

Yolov5

Yolov5 Anchor &#xff11;&#xff0e;Anchor是啥&#xff1f; anchor字面意思是锚&#xff0c;是个把船固定的东东&#xff08;上图&#xff09;&#xff0c;anchor在计算机视觉中有锚点或锚框&#xff0c;目标检测中常出现的anchor box是锚框&#xff0c;表示固定的参考框…...

36、Flink 的 Formats 之Parquet 和 Orc Format

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…...

Docker 笔记(一)--安装

Docker 笔记&#xff08;一&#xff09;–安装 记录Docker 安装操作记录&#xff0c;便于查询。 参考 链接: Docker 入门到实战教程(二)安装Docker链接: docker入门(利用docker部署web应用)链接: 阿里云容器镜像服务/镜像加速器/操作文档链接: 网易镜像中心链接: 阿里云镜像…...