Ansys Zemax | 如何将光栅数据从Lumerical导入至OpticStudio(下)

图片

附件下载

联系工作人员获取附件

本文介绍了一种使用Ansys Zemax OpticStudio和Lumerical RCWA在整个光学系统中精确仿真1D/2D光栅的静态工作流程。将首先简要介绍方法。然后解释有关如何建立系统的详细信息。

本篇内容将分为上下两部分,上部将首先简要介绍方法工作流,下部将详细阐述示例部分。

介绍

在此工作流程中,设计人员首先在Lumerical FDTD或RCWA中模拟光栅,然后将数据导出到扩展名为json的文件。在OpticStudio中,用户可以导入这些数据,以精确模拟在整个宏观系统中的光栅特性。

示例

本文提供了8个示例供用户参考。第一个示例是用于演示如何建立光栅的简单光栅。接下来的3个示例(2-4)演示了文章Speos Lumerical Sub-wavelength Model中提供的同样的json示例。最后4个示例(5-8)模拟了CMOS背向衍射效应。该系统包含一个手机镜头模型和一个衍射表面,该表面读取一个json文件,用于模拟CMOS传感器上的背向衍射效应。

1. Simple_period_4um-2023R1.zar

在此示例中,请特别检查我们对光源使用的波长是否与.json文件中定义的波长相同。此外,衍射面两侧的折射率也应与.json文件中定义的相同。

图片

2. triangular_lattice_reflector.zar

在此示例中,json文件加载到了物体2衍射光栅的表面1上。

图片

由于我们将光源设置为宽带波长,因此可以看到衍射光栅引起的“彩虹”。

图片

图片

3. grating1D_x.zar

此示例与上一个示例类似。唯一的区别是我们将json文件替换为一维光栅示例。

图片

4. FDTD_1D_diffraction_grating_export.zar

在此示例中,我们在玻璃平板上放置了一个圆形光栅。准直光束入射到该光栅上,光栅将光线衍射到一个满足全反射条件的大角度,然后衍射光线在玻璃平板内传播。这展现了关于AR光波导如何工作的非常基本的概念。

图片

值得一提的是此示例的设置。如下所示,物体2和3重叠。根据嵌套规则,重叠部分的表面属性将由编辑器中物体编号较大的物体决定。在此示例中,此重叠部分的表面属性将由物体3的表面1决定,提供衍射功能。

图片

另外值得一提的是,我们之所以这样建立系统,是因为坐标系统。首先,我们可以通过从物体属性中选中“绘制局部坐标轴”选项来查看物体3的局部坐标,如下所示。可以看到,物体3的z轴指向内侧。

图片

另一方面,如果我们查看json文件,可以看到它假设-z侧(n_lower)的折射率为1.565,+z侧(n_upper)的折射率为 1.0。这就是为什么我们需要将物体3放置在玻璃平板之外,但将其与玻璃平板(物体2)重叠。另请注意,这也是为什么物体3的材料是空白的,意味着折射率为1.0,这确保了+z侧的折射率为1.0。同样地,物体3的-z侧折射率为1.565,来自物体2(玻璃平板)的材料属性。

通过这样做,我们可以确保 .json文件中的折射率条件与OpticStudio中的设置相匹配。请注意,json文件中的数据进一步来自Lumerical中的设置。从根本而言,在将json文件分配到物体时,我们是将Lumerical和OpticStudio中物体之间的坐标系相匹配。

图片

5. Plan_B_period_1um-2023R1.zar

6. Plan_B_period_1um_use_real_IR_coating-2023R1.zar

下图展示了Plan_B_period_1um_use_real_IR_coating-2023R1.zar中的数据。

图片

7. Plan_B_period_4um-2023R1.zar

8. Plan_B_period_4um_use_real_IR_coating-2023R1.zar

下图展示了Plan_B_period_4um_use_real_IR_coating-2023R1.zar中的数据。

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/306137.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一键修复所有DLL缺失解决步骤,使用dll修复工具详情

在使用电脑或安装软件时,我们有时会遭遇DLL文件丢失的情况,这会阻止软件正常启动或运行。为此,一个简易且有效的解决方案是使用一键修复所有DLL缺失问题的工具。 引言 DLL(动态链接库)是Windows操作系统的核心部分&am…

k8s_入门_kubelet安装

安装 在大致了解了一些k8s的基本概念之后,我们实际部署一个k8s集群,做进一步的了解 1. 裸机安装 采用三台机器,一台机器为Master(控制面板组件)两台机器为Node(工作节点) 机器的准备有两种方式…

文库配置异步转换(宝塔)| 魔众文库系统

执行以下操作前提前进入网站根目录,如 cd /www/wwwroot/example.com执行 artisan 命令前请参照 开发教程 → 开发使用常见问题 → 如何运行 /www/server/php/xxx/bin/php artisan xxx 命令 步骤1,生成数据库队列表迁移文件 在执行该步骤前,请…

橘子学JDK之JMH-02(BenchmarkModes)

一、案例二代码 这次我们来搞一下官网文档的第二个案例,我删除了一些没用的注释,然后对代码做了一下注释的翻译,可以看一下意思。 package com.levi;import org.openjdk.jmh.annotations.*; import org.openjdk.jmh.runner.Runner; import …

【科技】2024最新微信机器人一键部署教程

外话 话说上次写文章好像又过了几个月了…… 其实还是因为马上小升初的各种密考,其它地方不知道,反正广东这块名校基本上都得密考考进去 笔者连考几次都惨不忍睹…… 不过5月份会有一个信息技术特长生招生,看看能不能吧~ 正文 先说&#xff…

基于SpringBoot+Vue的高校大学生心理咨询管理系统(源码+文档+部署+讲解)

一.系统概述 系统根据现有的管理模块进行开发和扩展,采用面向对象的开发的思想和结构化的开发方法对高校大学生心理咨询管理的现状进行系统调查。采用结构化的分析设计,该方法要求结合一定的图表,在模块化的基础上进行系统的开发工作。在设计…

springboot相关报错解决

Caused by: java.lang.ClassNotFoundException: 目录 Caused by: java.lang.ClassNotFoundException: org.springframework.context.event.GenericApplicationListener spring-boot-dependencies:jar:2.1.9.RELEASE was not found org.springframework.context.event.Generi…

华为OD-C卷-攀登者1[100分]

攀登者喜欢寻找各种地图,并且尝试攀登到最高的山峰。 地图表示为一维数组,数组的索引代表水平位置,数组的元素代表相对海拔高度。其中数组元素0代表地面。 例如: [0,1,2,4,3,1,0,0,1,2,3,1,2,1,0],代表如下图所示的地图 地图中有两个山脉位置分别为 1,2,3,4,5 和 8,9,1…

SV-7042V 40W网络有源音柱 智慧灯杆广播音柱

SV-7042V 40W网络有源音柱 一、描述 SV-7042V是深圳锐科达电子有限公司的一款壁挂式网络有源音柱,具有10/100M以太网接口,可将网络音源通过自带的功放和喇叭输出播放,其采用防水设计,功率40W。 SV-7042V作为网络广播播放系统的终…

LongVLM:让大模型解读长视频 SOTA 的方法

LongVLM:让大模型解读长视频 SOTA 的方法 使用LongVLM处理长视频的步骤LongVLM 方法3.1 总体架构3.2 局部特征聚合3.3 全局语义整合 效果4.1 实验设置4.2 主要结果4.3 消融研究4.4 定性结果 论文:https://arxiv.org/pdf/2404.03384.pdf 代码&#xff1a…

C语言进阶课程学习记录-main函数与命令行参数

C语言进阶课程学习记录-main函数与命令行参数 main函数验证以下4中定义是否正确实验-main的返回值cmd窗口 实验-main的输入参数cmd窗口 在main函数执其执行的函数实验-程序执行的第一个函数gcc编译器cmd窗口bcc编译器 小结 本文学习自狄泰软件学院 唐佐林老师的 C语言进阶课程&…

SpringCloud Alibaba Sentinel 规则持久化

一、前言 接下来是开展一系列的 SpringCloud 的学习之旅,从传统的模块之间调用,一步步的升级为 SpringCloud 模块之间的调用,此篇文章为第十七篇,即使用 Sentinel 实现规则持久化。 二、概述 从前面我们做的实验可知,…

VsCode 安装Jupyter Notebook

VsCode 安装Jupyter Notebook 安装 1、打开 VSCode 编辑器,点击界面左端的【扩展】栏; 2、在【搜索框】中输入python,点击第一个Python,检查是否已经安装 python 插件,没安装的点击安装;已安装的继续第3步…

使用新版FLIR (FLIR_ADAS_v2) 数据集创建yolo格式数据集(目标检测)

FLIR在2022.1.19发布了新版的FLIR_ADAS_v2,有着更多的类别和数量更丰富的图像。数据集同步注释热图像和无注释RGB图像供参考。本文章主要介绍如何使用FLIR_ADAS_v2中的rgb图像和thermal图像来制作yolo格式数据集。 1.官方数据集下载:FLIR_ADAS_v2数据集…

【论文阅读——Profit Allocation for Federated Learning】

1.摘要 由于更为严格的数据管理法规,如《通用数据保护条例》(GDPR),传统的机器学习服务生产模式正在转向联邦学习这一范式。联邦学习允许多个数据提供者在其本地保留数据的同时,协作训练一个共享模型。推动联邦学习实…

zotero+zotcard笔记美化(含模板)

首先感谢这篇文章和它的公众号&#xff0c;非常多关于zotero教程干货Zotero笔记样式美化 (qq.com) 效果 zotcard信息卡 <h1>&#x1f4dc;<strong>信息卡</strong></h1> <ul><li>&#x1f42c;<span style"color: #005EFF"&g…

自定义集合类实现接口IEnumrable和IEnumrator,遍历/迭代自定义集合对象

先来说说IEnumrable和IEnumrator接口&#xff0c;IEnumrable接口成员如下&#xff1a; public interface IEnumerable { IEnumerator GetEnumerator(); } IEnumrable是可枚举类型&#xff0c;什么是可枚举类型呢&#xff1f;简单说&#xff0c;就是实现了I…

数字证书在网络安全中的关键作用与日常应用

在当今数字化的时代&#xff0c;网络安全问题日益凸显&#xff0c;保护数据安全和用户隐私成为了人们关注的焦点。数字证书作为一种重要的网络安全技术&#xff0c;其在网络安全中扮演着关键的角色&#xff0c;并且在我们的日常生活中有着广泛的应用。现在给大家介绍简单介绍下…

一些优雅的算法(c++)

求最大公约数&#xff1a;辗转相除法 int gcd(int a,int b){return b0?a:gcd(b,a%b); }求最小公倍数&#xff1a;两整数之积除以最大公约数 int lcm(int a, int b){return a*b / gcd(a, b); }十进制转n进制&#xff1a; char get(int x){if(x<9){return x0;}else{return…

C#基础--之数据类型

C#基础–之数据类型 在第一章我们了解了C#的输入、输出语句后&#xff0c;我这一节主要是介绍C#的基础知识&#xff0c;本节的内容也是后续章节的基础&#xff0c;好的开端等于成功的一半。在你阅读完本章后&#xff0c;你就有足够的C#知识编写简单的程序了。但还不能使用封装、…