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

Ansys Zemax | 光学系统设计中如何使用玻璃替换方法来优化玻璃

在光学系统中选择最优玻璃材料时,Conrady d-D以及模型玻璃等传统的玻璃选择方法提供的帮助有限。本文介绍了如何使用玻璃替换方法进行直接玻璃优化,以及在考虑玻璃的可用性、成本及耐候性等因素时,如何进一步严格挑选玻璃。

简介

玻璃替换方法是OpticStudio中选择玻璃最有效的方法。玻璃替换方法可直接修改玻璃类型,然后重新优化系统,以确定新的玻璃是否是更好的设计方案。

当玻璃被设置为“substitute”求解时,OpticStudio将自动完成此过程。如果一种玻璃被标记为可替换 (Substitute) 玻璃,则全局优化算法(Hammer和Global Search)将在优化过程中自动执行此类玻璃的迭代替换。这样可使OpticStudio在不借助于理想化玻璃色散的情况下优化系统。本文将提供此方法的一个示例。 

玻璃替换

OpticStudio中处理玻璃优化的方式与处理其他数据的方式有些不同。直接优化玻璃选择是一件很困难且不可预测的过程,因为玻璃的属性是不连续的。

选择玻璃的传统方法是使用某种模型玻璃。模型玻璃方法是使用一些数值参数将玻璃色散理想化,然后优化这些参数,同时将参数值或计算的折射率值约束为类似可用的玻璃。在可见光区域,可以使用Conrady d-D方法进一步简化该方法。这种方法仅对少数不同波长的光线进行追迹、缩放,然后使用优化方法使其差异变为零值。

如果一种玻璃被描述成有一定折射率、阿贝数和部分色散偏离的“模型玻璃”,则可以将这些模型参数设置为变量,然后像其他数值参数一样进行优化。然而,模型玻璃方法存在一个严重的缺陷,即在使用模型玻璃方法获得良好的设计方案之后,必须将模型玻璃转换为真实的玻璃,然后再使用新选择的玻璃来重新优化该设计。遗憾的是,对于许多系统,新优化的设计方案的性能可能比模型玻璃方法的设计方案的性能要差。更令人沮丧的是,使用真实玻璃的最佳设计可能与使用模型模型找到的最优设计有不同的结构。

为避免以上过程中出现的麻烦,OpticStudio提供了一种玻璃替换工具。在优化过程中,玻璃替换方法使用来自玻璃目录中的真实玻璃替换镜头数据编辑器(LDE)中的玻璃。

为查看玻璃替换方法的操作过程,我们将优化Doublet.zmx示例文件中的玻璃,该文件位于 {Zemax}/Samples/Sequential/Objectives/Doublet.zmx。

打开示例文件,然后在LED中设置两种玻璃的状态:打开solve对话框(双击或左键单击玻璃参数),并将 solve 类型设置为“Substitute”。

图片

出现在玻璃旁边的字母“S”表示这些玻璃处于可替换状态。

图片

使用评价函数编辑器中的默认评价函数工具构建RMS波前优化默认评价函数。

图片

点击“OK”,评价函数编辑器将显示如下:

图片

优化

在优化过程中,由于每一次替换玻璃都会使评价函数的值产生不连续的跃变,所以玻璃替换需要使用全局优化算法,如使用Global Search或Hammer算法代替局部优化方法。

替换的玻璃选自系统当前使用的玻璃目录。在“System Explorer...Material Catalogs...Catalogs To Use”中可进行设置,本例使用的是Schott目录。

图片

打开OPD光扇图,观察系统在优化之前的性能。OPD最大量度为0.5个波长。

图片

点击“Optimize...Hammer Current”执行Hammer优化。勾选“Auto Update”选项,查看优化期间 LDE 的数据和OPD光扇图的变化。

点击“Start”开始优化

图片

您将看到优化期间替换用到的玻璃,以及 OPD 光扇图窗口的变化。

结果

在大约一分钟之后停止优化。LDE中的玻璃可能如下所示:

图片

将OPD光扇图的最大量度设置为0.5,以便与优化前的性能对比。性能明显已得到极大改善。

图片

“System Explorer...Materials Catalogs...Catalogs To Use”中列出的所有玻璃库中的玻璃都将被用于替换。如果要限制特定的玻璃目录,您可以在solve窗口中输入目录的名称。例如,您已在“General”窗口中列出Hoya和Schott两个玻璃目录:

图片

但是您只想使用Hoya目录中的玻璃替换面#1的玻璃,那么您只需要在该玻璃的solve窗口中输入“Hoya”即可。

图片

现在只有Hoya目录的玻璃可选作替换的玻璃。

玻璃替换模板

您可以使用“Libraries...Glass Substitution Template”中的玻璃替换模板进一步限制玻璃目录中玻璃的替换。请确认勾选了“Use Glass Substitution Template”选项框,否则将如同之前一样使用目录中的所有玻璃都会进行替换。

图片

玻璃替换模板使用玻璃目录中的“相对价格 (Relative cost)”和“状态 (Status)”等数据来筛选玻璃。例如,勾选“首选 (Preferred)”选项通常十分有用,因为首选 (Preferred) 的玻璃通常是熔炼更频繁的玻璃,更可能根据需求被供应商提供。

要查看特定玻璃的数据或状态,请点击“Libraries...Materials Catalog”打开材料目录窗口。

图片

材料目录给出了玻璃状态,可能是标准的 (Standard)、首选的 (Preferred)、特殊的 (Special)、废弃的 (Obsolete) 或熔炼的 (Melt)。除非您真的需要选择其他状态,否则请始终选择“Preferred”玻璃,因为这些玻璃价格最低、化学性质最稳定、而且最为常用。

材料目录还列出了相对价格(相对于单位重量下 N-BK7 的价格)、耐候性、耐沾污性、耐酸性、耐碱性和耐洗剂性。通过使用玻璃替换模板,您可以确保选择的玻璃不仅仅符合光学标准,还符合其他重要标准。

相关文章:

Ansys Zemax | 光学系统设计中如何使用玻璃替换方法来优化玻璃

在光学系统中选择最优玻璃材料时,Conrady d-D以及模型玻璃等传统的玻璃选择方法提供的帮助有限。本文介绍了如何使用玻璃替换方法进行直接玻璃优化,以及在考虑玻璃的可用性、成本及耐候性等因素时,如何进一步严格挑选玻璃。 简介 玻璃替换方法…...

springboot基础--实现默认登录页面

1、搭建项目 依赖中 多加入thymeleaf依赖 <dependencies><!--thymeleaf的依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><!--we…...

TDesign WXS语法

目录 一、输出函数返回值如何获取&#xff1f; 二、WXS语法 三、WXS案例 一、输出函数返回值如何获取&#xff1f; 写在js的方法中 wxml中{{方法名()}}输出&#xff1a; 发现不显示&#xff1f;&#xff1f; 所以不能使用这种方式&#xff01;&#xff01; 二、WXS语法 1.…...

Iterator设计模式

目录 1、示例 1.1 Aggregate接口 1.2 Iterator接口 1.3 Book类 1.4 BookShelf类 1.6 BookShelfIterator 类 1.7 Main类 2、解释Iterator模式中的角色 2.1 Iterator模式的存在意义 2.2 抽象类和接口 2.3 Aggregate 和 Iterator的对应 2.4 容易弄错"下一个"…...

ROS 入门

目录 简介 ROS诞生背景 ROS的设计目标 ROS与ROS2 安装ROS 1.配置ubuntu的软件和更新 2.设置安装源 3.设置key 4.安装 5.配置环境变量 安装可能出现的问题 安装构建依赖 卸载 ROS架构 1.设计者 2.维护者 3. 立足系统架构: ROS 可以划分为三层 ROS通信机制 话…...

第四章 Linux网络编程

ARP 协议 ARP 协议&#xff08;Address Resolution Protocol&#xff09;通过 IP 地址查找对应的 MAC 地址。 当一个主机需要发送数据给另一个主机时&#xff0c;它首先会检查本地的 ARP 缓存表&#xff08;ARP cache&#xff09;中是否存在目标主机的 MAC 地址。如果存在&…...

无涯教程-JavaScript - OFFSET函数

描述 OFFSET函数返回对范围的引用,该范围是一个单元格或单元格范围中指定的行数和列数。 返回的引用可以是单个单元格或单元格范围。您可以指定要返回的行数和列数。 语法 OFFSET (reference, rows, cols, [height], [width]) 争论 Argument描述Required/OptionalReferenc…...

rust切片

切片类型写为[T]。 切片是序列的一个片段。 它是动态大小类型&#xff0c;所以要使用切片类型&#xff0c;就必须使用它的指针类型。引用是最常用的指针类型。 [T; n]能隐式转换成[T]。 一、定义切片 &#xff08;一&#xff09;不可变切片 &[T]&#xff0c;共享切片&…...

2023/9/18 -- C++/QT

作业 完善登录框 点击登录按钮后&#xff0c;判断账号&#xff08;admin&#xff09;和密码&#xff08;123456&#xff09;是否一致&#xff0c;如果匹配失败&#xff0c;则弹出错误对话框&#xff0c;文本内容“账号密码不匹配&#xff0c;是否重新登录”&#xff0c;给定两…...

vue柱状图+折线图组合

<template><div id"main" style"width: 100%;height: 500px; padding-top: .6rem"></div> </template>data() {return {weekData: ["1周","2周","3周","4周","5周","6周&…...

js中如何实现一个简单的防抖函数?

聚沙成塔每天进步一点点 ⭐ 专栏简介⭐ 防抖函数⭐ 使用示例⭐ 写在最后 ⭐ 专栏简介 前端入门之旅&#xff1a;探索Web开发的奇妙世界 记得点击上方或者右侧链接订阅本专栏哦 几何带你启航前端之旅 欢迎来到前端入门之旅&#xff01;这个专栏是为那些对Web开发感兴趣、刚刚踏…...

mysq 主从同步错误之 Error_code 1032 handler error HA_ERR_KEY_NOT_FOUND

错误说明&#xff1a; MySQL主从同步的1032错误&#xff0c;一般是指要更改的数据不存在&#xff0c;SQL_THREAD提取的日志无法应用故报错&#xff0c;造成同步失败 &#xff08;Update、Delete、Insert一条已经delete的数据&#xff09;。 1032的错误本身对数据一致性没什么影…...

蓝桥杯 题库 简单 每日十题 day4

01 津津上初中了。妈妈认为津津应该更加用功学习&#xff0c;所以津津除了上学之外&#xff0c;还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴&#xff0c;而且上得越久就会越不高兴。假设津津…...

l8-d21 域名解析与http服务器实现原理

一、域名解析gethostbyname函数 主机结构在 <netdb.h> 中定义如下&#xff1a; struct hostent { char *h_name; /* 官方域名 */ char **h_aliases; /* 别名*/ int h_addrtype; /* 地址族&#xff08;地址类型&#xff09; */ int h_l…...

网络安全(黑客技术)自学规划

一、什么是网络安全 网络安全可以基于攻击和防御视角来分类&#xff0c;我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术&#xff0c;而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 无论网络、Web、移动、桌面、云等哪个领域&#xff0c;都有攻与防两面性…...

阻止用邮件不停注册wordpress账户的方法

您可以使用多种不同的策略来阻止垃圾邮件注册。以下是一些策略供您参考&#xff1a;第1个最好用 1.完全禁用WordPress注册&#xff1a;如果您不需要在您的WordPress网站上公开注册&#xff0c;最好完全禁用注册&#xff0c;而不是试图打击垃圾邮件注册。要完全禁用WordPress上…...

低代码工具大比拼:哪个最适合你?

低代码开发平台正日益流行&#xff0c;成为企业和开发者们的首选。但是&#xff0c;面对市场上众多的低代码工具&#xff0c;你是否感到困惑呢&#xff1f;今天&#xff0c;就和数聚股份一起探讨一下&#xff0c;究竟应该选择哪个低代码工具才能最好地满足你的需求。 首先&…...

用Python实现链式调用

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 我们在使用Django的models查询数据库时&#xff0c;可以看到有这种写法&#xff1a; form app.models import XXX query XXX.objects.all() query query.filter(name123, age456).filter(salary999)在这种写法里面&#xf…...

基于SSM的汽车租赁后台管理系统

基于SSM的汽车租赁后台管理系统 介绍 包括登录、首页、客户管理、车辆管理、汽车出租、出租单管理、汽车入库、检查单管理、系统管理等功能&#xff0c;适合二次开发课程设计、毕业设计等 软件架构 SSM 运行环境 数据库 mysql 安装教程输入链接说明 端口&#xff1a;3306…...

Word 文档转换 PDF、图片

工作有需要 Word 文档转换 PDF、图片 的场景&#xff0c;我们来看看 Java 开发中怎么解决这个问题的。 Word 转 PDF Word 转 PDF 分为商用 Aspose 方案和开源 Apache POIiText 方案。 Aspose 方案 这种方式在目前来看应该是最好的&#xff0c;无论是转换的速度还是成功的概…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下&#xff0c;越来越多的求职者将目光投向了日本及中日双语岗位。但是&#xff0c;一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧&#xff1f;面对生疏的日语交流环境&#xff0c;即便提前恶补了…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

React Native在HarmonyOS 5.0阅读类应用开发中的实践

一、技术选型背景 随着HarmonyOS 5.0对Web兼容层的增强&#xff0c;React Native作为跨平台框架可通过重新编译ArkTS组件实现85%以上的代码复用率。阅读类应用具有UI复杂度低、数据流清晰的特点。 二、核心实现方案 1. 环境配置 &#xff08;1&#xff09;使用React Native…...

《通信之道——从微积分到 5G》读书总结

第1章 绪 论 1.1 这是一本什么样的书 通信技术&#xff0c;说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号&#xff08;调制&#xff09; 把信息从信号中抽取出来&am…...

Java入门学习详细版(一)

大家好&#xff0c;Java 学习是一个系统学习的过程&#xff0c;核心原则就是“理论 实践 坚持”&#xff0c;并且需循序渐进&#xff0c;不可过于着急&#xff0c;本篇文章推出的这份详细入门学习资料将带大家从零基础开始&#xff0c;逐步掌握 Java 的核心概念和编程技能。 …...

招商蛇口 | 执笔CID,启幕低密生活新境

作为中国城市生长的力量&#xff0c;招商蛇口以“美好生活承载者”为使命&#xff0c;深耕全球111座城市&#xff0c;以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子&#xff0c;招商蛇口始终与城市发展同频共振&#xff0c;以建筑诠释对土地与生活的…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...