《ZEMAX光学设计超级学习手册》一一2.3 能量分析

简介:

本节书摘来自异步社区出版社《ZEMAX光学设计超级学习手册》一书中的第2章,第2.3节,作者: 林晓阳 更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.3 能量分析

ZEMAX光学设计超级学习手册
能量分析主要包括能量分布(Encircled Energy)和照度照度(Illumination)分析两种类型。

2.3.1 能量分布
能量分布(Encircled Energy),如图2-44所示,能量分布主要包括衍射法(Diffraction)、几何法(Geometric)、线性/边缘响应(Geometric Line/Edge Spread)、扩展光源(Extended Source)这4种分布。

image

(1)衍射法(Diffraction):显示能量分布图。以离主光线或物点的像的重心的距离为函数的包围圆能量占总能量的百分比。

衍射的包围圆能量计算的精度受到光程差(OPD)误差的大小和斜率以及抽样密度的限制。如果抽样密度不够,那么ZEMAX将显示“出错信息”表示该数据不够精确。为了提高精度,就得提高抽样密度或减少OPD误差。

衍射极限曲线是轴上无像差的包围圆能量分布。当轴上光线不能被追迹时(如在系统专门为离轴视场设计的情况下),在计算衍射极限的MTF响应时用第一个视场点代替。

(2)几何法(Geometric):用光线与像平面交点的办法计算包围圆能量。

(3)线性/边缘响应(Geometric Line/Edge Spread):对线状物体和边缘物体计算几何响应。

(4)扩展光源(Extended Source):用扩展光源分析包围圆能量。

2.3.2 照度
照度(Illumination)如图2-45所示。

image

(1)相对照度(Relative Illumination):相对照度计算结果被用来对视场中各点加权,以便精确地考虑出瞳辐射和立体角的影响。本设置如果选中,计算更精确,但更花时间。

本功能计算以径向视场坐标y为函数的相对照度。相对照度是按照零视场的照度归一化后的像平面上的一个微小区域上的照度。计算时考虑了变迹、渐晕、孔径、像面上和瞳面上的像差、F# 的变化、色差、像面形状、入射角,若假定用非偏振光的话,还考虑它的偏振效应。

计算时所利用的方法基本上根据“Relative Illumination”M. Rimner,SPIE,Vol.655PP99(1996)。我们将此文所公布的方法推广到变迹法、透过率和偏振效应。

本方法假定光源是一个均匀的朗伯体,相对照度由从像点观察得到的出瞳有效面积的数值积分计算而得。求积时,利用像方余弦空间的均匀网格在方向余弦空间上执行。

注意:相对照度计算一般不会得出余弦的四次方曲线。这是因为余弦四次方定律曲线的根据是无像差的薄透镜系统,系统中的光阑均匀照明平的像面。

对于包括远心光学系统、光瞳或像面有像差的系统或渐晕系统,相对照度可以用立体角的积分或从像方位置观察的出瞳上的有效面积积分求得。如图2-46所示。

image

(2)渐晕图(Vignetting Plot):计算以视场角为函数的渐晕系数。

用分数表示的渐晕系数是如同上的入射光线中通过系统所有面的孔径,不被遮挡而落到像面的光线的百分比。并以相对瞳面积归一化(如果有渐晕的话)。由此得出的曲线图表示了分数渐晕是视场位置的函数。如果所用的光线太少,结果会不精确。当系统中有很多孔径和较大的视场时,更是如此。

在计算中只用到主波长,因此它是一种几何计算,Y方向只使用正的坐标,所它只适用于旋转对称的镜头和视场。渐晕系数在此用来决定相对瞳面积。在计算中对光线溢出或全反射引起的出错则考虑为渐晕。如图2-47所示。
image

(3)XY方向照度分布(Illumination XY Scan):计算在像面上沿着横截线的由面光源产生的照度。

X,Y方向的照度扫描和相对照度功能相类似,只是加上了相对非均匀的面光源相对照度估计。对均匀照明的朗体来说,用相对照度功能更快计算更精确。然而对复杂光源系统,XY的照度扫描可以通过蒙特卡罗光线追迹及常用的相对照度计算法进行估算。

(4)二维面照度(Illumination 2D Surface):对二维面计算面光源的相对照度。

设置选项与XY扫描一样,只是二维面照度的输出用等高线或轮廓图或灰度图或伪彩色图形表示。

相关文章
|
计算机视觉
OpenCV(三十八):二维码检测
OpenCV(三十八):二维码检测
1351 0
|
算法 搜索推荐 图计算
图计算中的社区发现算法是什么?请解释其作用和常用算法。
图计算中的社区发现算法是什么?请解释其作用和常用算法。
795 0
|
IDE 程序员 开发工具
Python 进阶指南(编程轻松进阶):三、使用 Black 工具来格式化代码
Python 进阶指南(编程轻松进阶):三、使用 Black 工具来格式化代码
573 0
基于springboot的医院陪诊预约挂号系统
医院陪诊预约平台顺应老龄化社会需求,利用B/S架构与Spring、Vue、MySQL等技术,构建高效、便捷的线上陪诊服务系统,提升患者就医体验,优化医疗资源配置,推动医疗服务智能化发展。
|
人工智能 数据可视化 API
AI 时代,那些你需要了解的开源项目 (一) |AI应用开发平台篇
本文深入解析了Dify、n8n和Flowise三大AI应用开发平台的功能特点与适用场景。在AI技术日益普及的今天,这些工具让非专业人士也能轻松构建AI应用,助力企业实现智能化转型。并介绍了快速部署的方案
2166 4
|
存储 JavaScript 关系型数据库
鸿蒙开发:实现全局异常捕获和异常查看
如何灵活的拿到错误信息后,执行我们想要的逻辑,也是自研的一个诉求,比如全局监听到异常后,重启应用,或者上传到自己的服务器,或者可以在应用内查看等等,实现一个全局异常捕获,确实有很多的有用之处。
565 3
鸿蒙开发:实现全局异常捕获和异常查看
|
传感器 芯片
[远心镜头] 物方远心、像方远心和双远心镜头的区别
[远心镜头] 物方远心、像方远心和双远心镜头的区别
2175 0
|
存储 算法 关系型数据库
【高阶数据结构】 B树 -- 详解
【高阶数据结构】 B树 -- 详解
|
消息中间件 Java 应用服务中间件
阿里巴巴微服务开源项目盘点(持续更新)
【Apache Dubbo】 Apache Dubbo 是一款高性能、轻量级的开源Java RPC框架,是国内影响力最大、使用最广泛的开源服务框架之一,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
14435 119
|
存储 JavaScript 容器
Element UI表格拖拽(vue中) —— 行拖拽、列拖拽
Element UI表格拖拽(vue中) —— 行拖拽、列拖拽
3771 0

热门文章

最新文章