Zemax 中的屋脊棱镜建模

光学棱镜是一种透明的光学元件,其表面平坦且抛光,可以折射光线。最常见的棱镜类型是三棱镜,它有两个三角形底座和三个矩形或略呈梯形的表面。棱镜通常由玻璃或丙烯酸等材料制成。当光线以一定角度进入棱镜时,它会在穿过棱镜时发生折射或弯曲。光线的这种弯曲是由于光从一种介质(空气)进入另一种介质(棱镜的材料)时速度发生变化。折射程度取决于光线进入棱镜的角度和棱镜材料的折射率。

阿贝屋脊棱镜,又称阿米奇屋脊棱镜,是一种用于光学倒像和正像的棱镜。一种典型的用途是望远镜,如图 1 所示。阿贝屋脊棱镜是经典屋脊棱镜的改良版,通常用于双筒望远镜和其他光学设备中的紧凑直线光路。

阿贝屋脊棱镜由两个直角棱镜组成,斜边面粘合在一起。这种布置形成了一个屋顶状结构,光路弯曲 90 度,类似于标准屋脊棱镜。然而,阿贝屋脊棱镜的关键创新是在其中一个棱镜上增加了一个全内反射 (TIR) 表面,这样就可以在不倒置物体的情况下倒置图像。

 

图 1 望远镜中的阿贝屋脊棱镜

图 2 显示了阿贝屋脊棱镜的模型,该模型是在混合顺序和非顺序系统中设置的。棱镜配置为 ABBE_ROOF.POB。.POB 文件是多边形对象的预设模板。当选择相应类型的 .POB 文件时,唯一需要输入的是几何尺寸,如图 3 所示。

 

图2 阿贝屋脊棱镜的三维布局

 

图 3 非连续组件编辑器(POB 维度)

使用尺寸定义的棱柱对象,将非序列对象放置在具有正确定义出口位置的序列布局中,以形成混合模式。混合模式系统是包含非序列对象的序列系统。要通过这样的系统执行光线追踪,必须使用入口和出口端口来定义 NSQ 组的开始和结束,如图 4 所示。

 

图4 Zemax混合模式下棱镜的关键部件

图5为混合模式系统的透镜数据表,入瞳直径选择为瞳孔,均匀切趾取5mm,本系统中视场设置为0度和3度,如图6所示。

 

图5 混合模型的镜头数据编辑器

 

图6 混合模型的场设置

图 7 明确展示了光束在阿贝屋脊棱镜内的传播方式。入射光束通过其一个面进入阿贝屋脊棱镜。考虑通过棱镜较长的腿进入的情况。当光进入第一个棱镜时,它会在第一个空气-玻璃界面发生折射。棱镜通常由玻璃制成,折射会使光线向法线方向弯曲。阿贝屋脊棱镜的主要特征是在其中一个棱镜上引入了全内反射 (TIR) 表面。此 TIR 表面应用于第一个棱镜的斜边。当折射光束以大于临界角的角度遇到此 TIR 表面时,它会发生全内反射。内部反射的光束从 TIR 表面反射并转置到另一个棱镜。反射会反转光束的方向。

然后,光束进入第二个棱镜,并在第二个空气-玻璃界面处发生折射。这种折射使光线偏离法线。光线通过阿贝屋脊棱镜的一个面离开。对于望远镜和双筒望远镜,这种光线可能会继续穿过其他光学元件,然后到达目镜或观察器。阿贝屋脊棱镜中的反射和折射组合导致光路反转。这意味着望远镜或双筒望远镜形成的图像方向正确,适合地面观测。

 

图7 阿贝屋脊棱镜内部的光传播

关于阿贝屋脊棱镜的偏振调制,当将垂直偏振的琼斯矢量应用于入射光时,例如 [0,1]。图像平面中的偏振状态如下所列,来自偏振光瞳图。输出光为椭圆偏振。

 

图8 极化状态图

 

图9 全瞳孔偏振状态数据列表

需要注意的是,阿贝屋脊棱镜的几何形状和材料特性取决于您的具体设计要求。此外,熟悉 Zemax 的用户界面和功能(例如 .POB 模板、偏振光瞳图)对于高效建模和分析至关重要。

 

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

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

相关文章

目标跟踪之sort算法(3)

这里写目录标题 1 流程1 预处理2 跟踪 2 代码 参考:sort代码 https://github.com/abewley/sort 1 流程 1 预处理 1.1 获取离线检测数据。1.2 实例化跟踪器。2 跟踪 2.1 轨迹处理。根据上一帧的轨迹预测当前帧的轨迹,剔除到当前轨迹中为空的轨迹得到当前…

solidity高阶 -- 线性继承

Solidity是一种面向合约的高级编程语言,用于编写智能合约。在Solidity中,多线继承是一个强大的特性,允许合约从多个父合约继承属性和方法。本文将详细介绍Solidity中的多线继承,并通过不同的实例展示其使用方法和注意事项。 在Sol…

神经网络|(七)概率论基础知识-贝叶斯公式

【1】引言 前序我们已经了解了一些基础知识。 古典概型:有限个元素参与抽样,每个元素被抽样的概率相等。 条件概率:在某条件已经达成的前提下,新事件发生的概率。实际计算的时候,应注意区分,如果是计算综…

双目立体校正和Q矩阵

立体校正 对两个摄像机的图像平面重投影,使二者位于同一平面,而且左右图像的行对准。 Bouguet 该算法需要用到双目标定后外参(R,T) 从上图中可以看出,该算法主要分为两步: 使成像平面共面 这个办法很直观&#xff…

软件开发中的密码学(国密算法)

1.软件行业中的加解密 在软件行业中,加解密技术广泛应用于数据保护、通信安全、身份验证等多个领域。加密(Encryption)是将明文数据转换为密文的过程,而解密(Decryption)则是将密文恢复为明文的过程。以下…

C语言练习(29)

13个人围成一圈&#xff0c;从第1个人开始顺序报号1、2、3。凡报到“3”者退出圈子&#xff0c;找出最后留在圈子中的人原来的序号。本题要求用链表实现。 #include <stdio.h> #include <stdlib.h>// 定义链表节点结构体 typedef struct Node {int num;struct Nod…

postgres基准测试工具pgbench如何使用自定义的表结构和自定义sql

使用 pgbench 进行 PostgreSQL 性能测试时&#xff0c;可以自定义表结构和测试脚本来更好地模拟实际使用场景。以下是一个示例&#xff0c;说明如何自定义表结构和测试脚本。 自定义表结构 创建自定义表结构的 SQL 脚本。例如&#xff0c;创建一个名为 custom_schema.sql 的文…

5.2 软件需求分析

文章目录 需求分析的意义软件需求的组成需求分析的5个方面需求分析方法 需求分析的意义 需求分析解决软件“做什么”的问题。由于开发人员比较熟悉计算机而不熟悉领域业务&#xff0c;用户比较熟悉领域业务而不熟悉计算机&#xff0c;双方需要通过交流&#xff0c;制定出完整、…

Linux 如何使用fdisk进行磁盘相关的操作

简介 fdisk 命令是 Linux 中用于管理磁盘分区的强大文本实用程序。它可以创建、删除、调整大小和修改硬盘上的分区。 基本语法 fdisk [options] <device> <device>&#xff1a;要管理的磁盘&#xff0c;例如 /dev/sda、/dev/nvme0n1 或 /dev/vda 示例用法 列…

理解神经网络:Brain.js 背后的核心思想

温馨提示 这篇文章篇幅较长,主要是为后续内容做铺垫和说明。如果你觉得文字太多,可以: 先收藏,等后面文章遇到不懂的地方再回来查阅。直接跳读,重点关注加粗或高亮的部分。放心,这种“文字轰炸”不会常有的,哈哈~ 感谢你的耐心阅读!😊 欢迎来到 brain.js 的学习之旅!…

GPU上没程序在跑但是显存被占用

原因&#xff1a;存在僵尸线程&#xff0c;运行完但是没有释放内存 查看僵尸线程 fuser -v /dev/nvidia*关闭僵尸线程 pkill -9 -u 用户名 程序名 举例&#xff1a;pkill -9 -u grs python参考&#xff1a;https://blog.csdn.net/qq_40206371/article/details/143798866

大数据Hadoop入门3

第五部分&#xff08;Apache Hive DML语句和函数使用&#xff09; 1.课程内容大纲和学习目标 2.Hive SQL-DML-load加载数据操作 下面我们随机创建文件尝试一下 先创建一个hivedata文件夹 在这个文件夹中写一个1.txt文件 下面使用beeline创建一张表 只要将1.txt文件放在t_1文件…

WordPress event-monster插件存在信息泄露漏洞(CVE-2024-11396)

免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…

02数组+字符串+滑动窗口+前缀和与差分+双指针(D5_双指针)

目录 一、基本介绍 二、算法思想 三、算法模型 1. 对撞指针 2. 快慢指针 3. 滑动窗口 一、基本介绍 双指针是一种应用很广泛且基础的算法&#xff0c;严格来说双指针不是算法更像是一种思想。 双指针中的“指针” 不仅仅是大家所熟知的C/C里面的地址指针&#xff0c;还是…

【Pytest】结构介绍

1.目录结构介绍 project_root/ │ ├── tests/ # 测试用例存放目录 │ ├── __init__.py │ ├── test_module1.py │ ├── module1.py # 被测试的模块 ├── conftest.py # pytest配置文件&#xff0c;可定义fixture和钩子函数 ├── py…

网易云音乐歌名可视化:词云生成与GitHub-Pages部署实践

引言 本文将基于前一篇爬取的网易云音乐数据, 利用Python的wordcloud、matplotlib等库, 对歌名数据进行深入的词云可视化分析. 我们将探索不同random_state对词云布局的影响, 并详细介绍如何将生成的词云图部署到GitHub Pages, 实现数据可视化的在线展示. 介绍了如何从原始数据…

const的用法

文章目录 一、C和C中const修饰变量的区别二、const和一级指针的结合const修饰的量常出现的错误是:const和一级指针的结合总结&#xff1a;const和指针的类型转换公式 三、const和二级指针的结合 一、C和C中const修饰变量的区别 C中&#xff1a;const必须初始化&#xff0c;叫常…

AI DeepSeek

DeepSeek 文字解析 上传图片解析 视乎结果出入很大啊&#xff0c;或许我们应该描述更加清楚自己的需求。

Rust:Rhai脚本编程示例

当然&#xff0c;以下是一个简单的Rhai脚本编程示例&#xff0c;展示了如何在Rust中使用Rhai执行脚本。 首先&#xff0c;你需要确保你的Rust项目中包含了rhai库。你可以在你的Cargo.toml文件中添加以下依赖项&#xff1a; [dependencies] rhai "0.19" # 请检查最…

CTF-web: Python YAML反序列化利用

PyYAML存在以下几个特殊标签,如果这些标签被不安全的解析,会造成解析漏洞 从 PyYaml 版本 6.0 开始&#xff0c;load 的默认加载器已切换到 SafeLoader&#xff0c;以降低远程代码执行的风险。更新后易受攻击的是 yaml.unsafe_load 和 yaml.load(input, Loaderyaml.UnsafeLoade…