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

optiland圈入能量分析

文章目录

    • 圈入能量的基础概念
    • 测试
    • EncircledEnergy

圈入能量的基础概念

圈入能量(Encircled Energy)是评估光学系统成像质量最直观、最具物理意义的指标之一。它描述了在像面上,以光斑中心为圆心、不同半径的圆内所包含的光能量占总能量的百分比。设像面上的光强分布为I ( x , y ) I(x, y)I(x,y),总能量为E t o t a l = ∬ I ( x , y ) d x d y E_{total} = \iint I(x, y) dx dyEtotal=I(x,y)dxdy。则圈入能量E E ( r ) EE(r)EE(r)定义为半径为r rr的圆内的能量占比

E E ( r ) = ∫ 0 2 π ∫ 0 r I ( ρ , θ ) ρ d ρ d θ E t o t a l × 100 % EE(r) = \frac{\int_0^{2\pi} \int_0^r I(\rho, \theta) \rho \, d\rho \, d\theta}{E_{total}} \times 100\%EE(r)=Etotal02π0rI(ρ,θ)ρdρdθ×100%

在几何光学近似下,I ( x , y ) I(x, y)I(x,y)由离散的光线交点密度表示。此时E E ( r ) EE(r)EE(r)简化为统计落在半径r rr内的光线数量占总光线数量的比例。

根据定义可知,E E ( r ) EE(r)EE(r)是一条从 0 开始,随半径r rr增大而单调递增,最终趋近于 100% 的曲线,其陡峭程度直接反映了系统的成像集中度:曲线越陡,说明能量越集中,成像质量越好。

测试

下面以消色差胶合透镜为例,其结构如下

图中共针对三个物点进行成像,不同颜色的光线代表不同的波长。这三个点的圈入能量图如下

图中对10000条光线进行了仿真,对于0.5876um的入射光来说,位于焦点处的能量圈入图最陡峭,几乎在1 μ 1\mu1μm左右就已经圈入了所有光线。随着距离光轴渐远,其EE图也变得相对平缓。绘图代码如下

importmatplotlib.pyplotaspltfromoptiland.samplesimportCementedAchromat lens=CementedAchromat()lens.draw()plt.show()fromoptiland.analysisimportEncircledEnergy EE=EncircledEnergy(lens)EE.view()plt.show()

EncircledEnergy

【EncircledEnergy】是optiland提供的圈入能量类,在上面的示例中,只输入了一个optic类型的参数,这也是唯一必须输入的参数,其他参数如下

  • 【fields】指定要分析的视场。可以传入特定视场的索引或坐标元组。
  • 【wavelength】默认 ‘primary’,表示使用系统定义的主波长。欧泽可以输入一个浮点数,表示以μ \muμm为单位的波长。
  • 【num_rays】追迹的光线总数,默认 100,000。围圆能量分析对采样密度极其敏感。为了准确计算 90% 或 95% 的能量半径,需要大量的光线来填充光斑的边缘和尾部。10万条光线是保证统计精度的标准配置。
  • 【distribution】为入瞳内的光线分布模式,默认’random’,以避免周期性混叠误差,能更真实地模拟连续光强的分布情况。
  • 【num_points】为绘制 EE 曲线时的横坐标(半径)采样点数,默认256。

【EncircledEnergy】提供了多种分析方法,包括

  • 【rms_spot_radius】计算均方根半径。这是衡量光斑“平均”大小的标准。
  • 【geometric_spot_radius】计算几何最大半径(GEO Radius)。即离质心最远的那条光线的距离,代表了光斑的绝对物理边界。
  • 【centroid】计算光斑的能量质心,其计算结果为绘图原点。
  • 【airy_radius(n_w, wavelength)】计算艾里斑半径
  • 【airy_disc_x_y(wavelength)】生成用于绘图的艾里斑参考数据。在 EE 曲线图中,通常会画一条垂直线标记艾里斑半径。如果系统的 EE 曲线在艾里斑半径处已经接近 84%,说明系统达到了衍射极限。
http://www.jsqmd.com/news/1192016/

相关文章:

  • Claude Code CLI 无缝桥接 Kimi K2.5 实践指南
  • 数据库-Redis:常用语法 / Redis 核心知识技能梳理
  • VirtualBox上安装FreeBSD
  • 电力电子死区时间测量与优化:从原理到实战应用
  • 影刀RPA 应用市场的子流程复用:别人的轮子怎么安全地用
  • 福州市闽清县 2026最新靠谱黄金回收门店TOP排行榜 黄金回收白银回收铂金回收店铺及电话地址推荐 - 盛世金银回收
  • iBlender AI插件实战:快速创建Marvel Rivals风格3D角色模型
  • Qt绘图系统:从QPainter基础到高级渲染机制
  • Python爬虫实战:猫眼电影票房数据采集与可视化分析完整指南
  • CANoe 15.0 与 VN5620 硬件环境搭建及授权激活全流程解析
  • linux的mlocate命令详解
  • 巡检还靠表格和群消息?
  • SpringBoot高频面试题深度剖析与实战指南(2024版)
  • 【译】《心悟内核:先懂设计,再读代码》—9、内核设备模型:硬件如何映射为 /dev
  • 毕节市赫章县 2026最新靠谱黄金回收门店TOP排行榜 黄金回收白银回收铂金回收店铺及电话地址推荐 - 大熊猫898989
  • 开源3D建模软件FreeCAD核心工作台与实战场景解析
  • GACCode实战指南:本地化Claude编程工作流搭建
  • Unity运行时动态加载FBX/OBJ模型与贴图:TriLib 2.x实战指南
  • 基于MATLAB的和差测角天线方向图优化与仿真实践
  • 从零读懂 K8s:核心概念、集群架构与工作原理
  • AMIC120工业SoC实战:异构架构、PRU实时控制与EtherCAT驱动开发详解
  • 测试工具彻底区分:JUnit / Mockito / MockMvc
  • 滁州市全椒县 2026最新靠谱黄金回收门店TOP排行榜 黄金回收白银回收铂金回收店铺及电话地址推荐 - 盛世金银回收
  • 大模型时代数据分析速成:SQL与Python语法速成+项目实战
  • 影刀RPA 影刀市场变现:如何发布和运营收费流程
  • 物理层:从比特到信号的工程艺术——深入解析数据通信的物理基础
  • 图解MD2:首个互联网哈希算法的前世今生与源码实战
  • ERP系统选型评估指南:中小企业如何评估一款ERP适不适合自己
  • FPGA入门(六):Vivado 工程复用 + 流水灯实战(参数化设计)
  • 第十二篇:共识的边界(后记)