Ansys Zemax | NSC 非序列矢高图用户分析

这篇具有很好参考价值的文章主要介绍了Ansys Zemax | NSC 非序列矢高图用户分析。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文介绍如何使用 NSC 矢高图用户分析功能在非序列模式下测量和显示对象的矢高。了解此功能的基础知识,包括如何设置复杂 CAD 零件的文件以获取特定面的矢高值。(联系我们获取文章附件)

介绍

OptocStudio 的序列模式具有表面矢高分析功能,该功能将表面从局部顶点的矢高或 z 位置变化显示为表面上 x 和 y 位置的函数。非序列模式没有提供相同功能的内置分析,但该软件确实具有强大的应用程序编程接口(API),允许用户编写自己的自定义分析功能。本文将展示如何使用 API 构建的用户分析来计算非序列对象的表面矢高。它还将讨论用于创建自定义用户分析的内部计算和一些技术。

NSC 矢高计算

NSC 矢高用户分析执行几个步骤来计算非序列模式下给定对象面的矢高值:

· 在内存中创建系统的临时副本

· 除选定对象外的所有对象都设置为忽略

· 所选对象的材质被移除,以可能考虑对象的背面

· 系统中放置单个源光线

· · 默认情况下,源光线放置在 (0, 0, -50) 的 XYZ 处,指向 (0, 0, 1) 的 LMN,但这些值可以高级设置(屏幕右下角)中更改

· · 然后将矩形数组应用于对应于采样和宽度的源

· 执行光线追迹并保存 ZRD 文件

· X_HITFACE 滤镜字符串应用于光线追迹,以仅获取所需面的 Z 值

· Z 中的偏移量应用于 ZRD 文件,以尝试将顶点处的矢高归零

· · 自动计算标准镜头、双标志性泽尼克表面、偶数非球面透镜、奇数非球面透镜和环形透镜的 Z 偏移
· · 可以手动更改 Z 偏移以考虑任何其他类型的曲面

计算结果是一维(线)/二维(假彩色)图或文本输出,可以在“设置”窗口中选择。用户分析可用于简单的非序列系统,例如转换后的双高斯、Biconic Zernike 曲面或带有进口 CAD 零件的复杂系统:

Ansys Zemax | NSC 非序列矢高图用户分析

Ansys Zemax | NSC 非序列矢高图用户分析

运行 NSC 矢高

NSC 矢高是用户分析。为方便起见,它已添加到界面中,可以在 Analyze…NSC Sag 找到。

Ansys Zemax | NSC 非序列矢高图用户分析

但更一般地说,用户分析可执行文件位于 {Zemax}\ZOS-API\User Analysis 文件夹中。一旦可执行文件被复制到正确的文件夹中,OpticStudio 需要重新启动。

要启动用户分析,请单击 Programming…User Analysis…NSC Sag:

Ansys Zemax | NSC 非序列矢高图用户分析

首次启动分析时,单击“设置”:

Ansys Zemax | NSC 非序列矢高图用户分析

“设置”窗口包含以下部分(所有长度值均以镜头单位为单位):

Ansys Zemax | NSC 非序列矢高图用户分析

1、对象 – 仅列出有效对象(非源和非检测器)

2、人脸 – 选择有效对象后,仅列出实际对象的人脸

3、样本数量 – 数据点数(32、64、128、256、512 或 1024)

4、Z 偏移 – 计算过程中从所有 Z 值中添加/减去的常量值

5、旋转 – 物体的 Z 轴旋转(值应在 0° 到 360° 之间)

6、X/Y 宽度 – 带光线阵列

7、X/Y 偏心 – 光线阵列的中心

8、显示为 ― 要显示的数据类型(假色、文本或横截面)

9、自动偏移 – 自动“猜测”常见对象和面的Z偏移和X / Y宽度的正确值

10、高级 – 公开高级设置:

a.光线阵列的 Z 起始位置

b.保留对象的原始 XY 倾斜度

c.保存中间 ZMX 和 ZRD 文件

11、按钮 – 确定运行分析,取消关闭设置而不执行计算

测量 CAD 文件

NSC 矢高用户分析可以测量任何非序列对象(包括 CAD 零件)的矢高。对于以对象的本地顶点为中心的本机 OpticStudio 对象,用户分析应该无需对用户的行为进行太多设置即可工作。但是,对于导入的 CAD 零件(包括 STEP 和 SLDPRT 文件),这些文件的零件中心可能相对于本地顶点进行偏移和旋转,因此可能需要进行一些设置。

首先要确定的是要对哪个面进行分析。要确定面数,请单击“非序列编辑器”工具栏中的“查看当前对象”。这将打开一个交互式查看器,可以在其中单击所需的表面。表面将变为橙色。突出显示的面编号将出现在查看器的选项卡中:

Ansys Zemax | NSC 非序列矢高图用户分析

接下来,要确定正确的倾斜度和偏心,请在 CAD 零件下方插入一个新的对象并将对象更改为源光线;将 Z 位置设置为 -50mm(NSC 矢高分析的默认值),将 # 布局光线设置为 1。现在打开 NSC 3D 布局,查看光线如何与 CAD 零件交互。

Ansys Zemax | NSC 非序列矢高图用户分析

如果光线当前以 CAD 零件为中心,则无需进行任何修改。但是,如果零件相对于光线旋转或光线不在零件的中心,则更改 CAD 零件的“绕 X/Y 倾斜”或光线的“X/Y/Z 位置”。快速更改 CAD 零件倾斜度的最简单方法是将“大约 X/Y/Z 的倾斜度”设置为变量并启动“优化…可视化优化。将所有倾斜的“开始”和“停止”值分别更改为 -180 和 +180。现在修改值,直到 CAD 零件与源光线对齐。确保在零件旋转后单击“保留并退出”:

Ansys Zemax | NSC 非序列矢高图用户分析

对于附加的示例文件,RandomCurve.STEP 的 Tilt About X 应为 -79.2,(X, Y, Z) 位置应为 (260, 500, -400):

现在,打开 NSC 矢高用户分析。单击设置。要估计 X/Y 宽度,请使用 NSC 3D 布局图中的活动光标。设置如下所示。要显示“高级”选项卡,请单击右下角的箭头;确保取消选中删除 XY 倾斜并选中保留保存的文件

Ansys Zemax | NSC 非序列矢高图用户分析

单击“确定”并查看实际分析结果。尽管样本数量设置得非常低,但会生成一个显示一些矢高数据的假色图:

Ansys Zemax | NSC 非序列矢高图用户分析

当前文件夹中将有一个名为 nsc_sag_map.zmx 的新文件。打开此文件并查看 NSC 3D 布局。单个源光线在 (N+1)x(N+1) 网格上重复,其间距与“设置”窗体中的 X/Y 宽度相关。

Ansys Zemax | NSC 非序列矢高图用户分析

现在,数据已在图中得到验证,保存的文件已完全被光线覆盖,可以增加采样以及宽度和偏心以获得最佳图像。

以下设置将生成最终图像:

Ansys Zemax | NSC 非序列矢高图用户分析文章来源地址https://www.toymoban.com/news/detail-468747.html

到了这里,关于Ansys Zemax | NSC 非序列矢高图用户分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Ansys Zemax | 手机镜头设计 - 第 2 部分:使用 OpticsBuilder 实现光机械封装

    本文是3篇系列文章的一部分,该系列文章将讨论智能手机镜头模块设计的挑战,从概念、设计到制造和结构变形的分析。本文是三部分系列的第二部分。概括介绍了如何在 CAD 中编辑光学系统的光学元件以及如何在添加机械元件后使用 Zemax OpticsBuilder 分析系统。展示案例是来

    2024年02月11日
    浏览(26)
  • Ansys Zemax | 设计抬头显示器时要使用哪些工具 – 第二部分

     本文为使用OpticStudio工具设计优化HUD抬头显示器系统的第二部分,主要包含演示了如何使用OpticStudio工具设计分析抬头显示器(HUD)性能,即全视场像差(FFA)和NSC矢高图。 (联系我们获取文章附件) 在第一部分中,我们主要介绍了如何以逆向方式对于HUD系统进行建模,下

    2024年02月09日
    浏览(31)
  • Zemax非序列中分光镜的设计方法

      分光镜有各种类型,在使用时,主要的因素包括 入射角 、 偏振态 和 波长 ,实现将入射光分为反射光和透射光。在非序列中的实现,主要通过设计分光板的膜层参数来实现分光作用,当然,与此类似的还可以设计结构和膜层实现滤波器件的作用。 对于 分光膜 ,主要是通

    2024年02月02日
    浏览(29)
  • 第六章、用户体验五要素之框架层解析(本文作用是通俗讲解,让你更容易理解)

            结构层定义产品运行形式,框架层则用于确定用什么样的功能或者形式来实现。在框架层,功能型和信息型产品都需要信息设计,不同的是功能型还需要界面设计,而信息型产品则是导航设计。         1、界面设计:如果涉及提供给用户做某些事的能力,那就是界

    2024年02月09日
    浏览(32)
  • 【linux】挖矿病毒nanominer伪装成python占用服务器GPU!本文带你分析并杀毒!

    可以看到root用户将GPU的核心跑满了每个占用都是100%,显存吃了6G多。 不能正常显示GPU被哪些进程占用 在/tmp/.x/目录中 总结: amdmemtweak: 优化显存时序,提高挖矿效能 config.ini: 挖矿配置文件 doos.pid: 挖矿进程的pid号 logs: 挖矿病毒的输出log nanominer: 3.7.7-linux版本的挖矿病毒,这

    2024年02月14日
    浏览(34)
  • KMP算法——通俗易懂讲好KMP算法:实例图解分析+详细代码注解 --》你的所有疑惑在本文都能得到解答

    KMP 是一个 解决模式串在文本串是否出现过 ,如果出现过,最早出现的位置的经典算法。 Knuth-Morris-Pratt 字符串查找算法,简称为 “KMP 算法”,常用于 在一个文本串 S 内查找一个模式串 P 的出现位置 ,这个算法由 Donald Knuth 、 Vaughan Pratt 、 James H. Morris 三人于 1977 年联合发表

    2024年02月07日
    浏览(32)
  • MapReduce序列化【用户流量使用统计】

    目录 什么是序列化和反序列化? 序列化 反序列化 为什么要序列化? 序列化的主要应用场景 MapReduce实现序列化 自定义bean对象实现Writable接口 1.实现Writable接口 2.无参构造 3.重写序列化方法 4.重写反序列化方法 5.顺序一致 6.重写toString 7.实现Comparable接口 MapReduce自定义序列化案

    2024年02月06日
    浏览(29)
  • 【ARMv8M Cortex-M33 系列 1.1 -- SAU Non-secure Callable(NSC) 介绍 】

    请阅读 【嵌入式开发学习必备专栏 之Cortex-M33 专栏】 ARMv8-M 架构引入了 TrustZone 技术,它提供了一种机制来实现在单个处理器内部的安全隔离。这项技术定义了两种状态: 安全状态 (Secure state)和 非安全状态 (Non-secure state)。在此架构下,可以同时运行安全和非安全代码

    2024年02月04日
    浏览(30)
  • Jackson序列化Bean额外属性附加--@JsonAnyGetter、@JsonUnwrapped用户

    有一项工作,需要将数据从一个服务S中读取出来(得到的是一个JSON),将数据解析转换以后构造成一个数组的类型A的对象,写入到一个服务T中。 A.class 在发现需要增加一种类型A的字类型B,这个类型属性非常多(将近一百),在这种情形下,如果直接定义出类型B来,定义那

    2024年01月24日
    浏览(55)
  • ANSYS二次开发:Python解析ansys fluent结果文件

    🍺相关文章汇总如下🍺: 🎈ANSYS二次开发:APDL开发入门准备🎈 🎈ANSYS二次开发:后处理使用APDL命令流解析结果文件🎈 🎈ANSYS二次开发:Python解析ANSYS结果文件(PyAnsys库)🎈 🎈ANSYS二次开发:Python和ANSYS进行交互操作(PyAnsys库,PyDPF)🎈 🎈ANSYS二次开发:Python解析ANS

    2024年02月07日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包