233 Topics

如何使用ZPLM提取analysis window里面的数据进行优化

先说明,ZOS 是怎么做优化的:通常会用透镜的一个暂时副本对评价函数进行评估 计算。在评价函数计算结束后,透镜的副本以及任何 对 镜头数据的改变都将 被 舍弃 。因而,在执行 ZPLM操作数 调用的宏 的过程中,镜头数据不能做任何改变。 这些 改变 将不会被保留,并且 可能会妨碍 在 同一评价函数中 ZPLM操作数 之后的操作数 的计算。 OpticStudio将无法 恢复到 ZPLM指定的宏计算之前的镜头状态。 如果 刻意 在后面的 操作数 计算 之前故意使用宏来改变镜头数据,那么应该执行两个宏。 第一个应该按需要修改数据,第二个应该重建原始条件下的数据。两个宏都可以列在评价函数编辑器中, 期间的操作数将在修改后的镜头数据基础上执行 。操作用户界面的宏命令,例如CLOSEWINDOW、 WINL()和 GETT()在此 是无效的。这一限制的原因是 这些命令从用户界面中反映 的 单一系统副本中获取信息。因此,即使 ZPLM宏更新系统副本,用户界面显示的主系统副本也不会被更新。出处: The Optimize Tab (sequential ui mode) > Optimization Overview > User Defined Operands (optimization overview) > Changes Made to the Lens from within the ZPLM Marcro 所以用以上操作数行不通,但是可以使用GETTEXTFILE获得即时的数据然后进行优化。附件以畸变为例,进行了优化。打开ZAR文件之后可以看到ZPL08.供大家参考使用

关于OpticStudio中POP(物理光学传播)的那些事

欢迎大家的到来,期待大家的回复~~今天我们花点时间来认识下OS中的POP功能~对于POP(物理光学传播),在知识库文章中有如下几篇文章,可以让大家快速入门,且解决80%的POP使用问题。当然,Zemax Community里也有很多POP相关的精彩讨论。探索OpticStudio中的物理光学传播 – 中文帮助 (zemax.com)如何在OpticStudio中模拟激光光束传播:第三部分 使用物理光学传播来模拟高斯光束 – 中文帮助 (zemax.com)Using-Physical-Optics-Propagation-POP-Part-1-Inspecting-the-beamsUsing-Physical-Optics-Propagation-POP-Part-2-Inspecting-the-beam-intensitiesUsing-Physical-Optics-Propagation-POP-Part-3-Inspecting-the-beam-phasesPOP 中本质上传播的是每个采样点上具有 Ex/Ey 电场分布的传播矩阵,用于表征传播的光束波前,然后与系统中的各个光学表面进行相互作用。当光束传播到表面的时候,本质上会将波前分解成为 Probing Rays,计算这些 Probing Rays 传播过后的情况,从而对比初始 Probing Rays 计算出对应的 Transfer Function,结合表面位置的波前计算出传播该光学表面过后的结果波前。在这样的计算过程中,光学表面引起的像差、传播中的衍射效应等都可以考虑进入传播当中。总结下,POP的过程就是定义初始光束 > 用Pilot Beam指导自由空间传播 > 用Probing Ray指导穿越光学界面 > 在指定位置读取光束能量和相位数据。下面一篇公众号文章也进行了很好的说明~梳理一下Zemax POP的工作逻辑 关于POP的使用场景  POP VS. Huygens PSF POP is really only ‘better than’ the PSF (either FFT or Huygens) if there are significant apertures that clip the beam.The strength/weakness of POP is

Fizeau干涉仪模拟实例

本文为翻译帖,作者是Kensuke Hiraka。原文链接(含附件):フィゾー干渉計のシミュレーションについて | Zemax Community本节介绍一个Fizeau干涉仪的模拟实例。干涉仪有多种类型,这里介绍的Fizeau干涉仪是一种干涉仪,广泛用于测量光学元件和透射波面的表面精度。 这里我们介绍一个使用Fizeau干涉仪来测量透镜的透射波面变形的例子。以下是被测试的系统。 使用一个有效直径为50毫米、焦距为578毫米的平凸透镜。为了表示不对称的像差,用Zernike条纹相位面来增加像散和慧差像差。 还使用了-0.7的圆锥系数。 平凸透镜会导致大的球差。下图是镜头数据编辑器。 背面的焦点是571.982毫米。以下是光路图。可以使用分析->波前图对波前进行分析。下图展示的是波前图的分析结果。波前PV值 0.3821λ、RMS 0.0881λ。接下来,对Fizeau干涉仪进行建模。 要建立一个含有 "平面光源 "的Fizeau干涉仪模型(即发射准直光),选择 "无焦像空间 "复选框并进入无焦模式,如下图所示。在对 "球面原型 "进行建模时(在这里发出会聚光),请将镜头置于正常焦距模式。镜头数据编辑器如下图所示。 在测试透镜后面放一个凸面镜反射光线,这样光线就会重新进入测试透镜。 应注意以下两点:1. 从测试镜头到凸面镜的距离应该是测试镜头的后焦点(571.982毫米)减去凸面镜的曲率半径(本例中为300毫米)。2.尽可能多地拾取数据,以确保在待测数据发生变化时,回程的数据相应变化。 各种系数也被拾取。模型完成后的光路图如下所示。检查波前像差图。可以看出,波前像差为0.7642λpv和0.1762λRMS,是单透镜的两倍。 也可以看出,不对称像差没有问题(因为往返的光通量通过被测镜头上的同一个地方)。因此,Fizeau干涉仪输出值的1/2是被测透镜本身的波前像差。此外还可以使用下图的干涉图分析功能进行波前分析:放大率被设置为1。 帮助文件指出,对于双通道光学系统,放大率应设置为2,但这是在双通道光学系统被建模为简化的单通道时。 如果像本例中那样对整个双通道进行建模,则应将放大率设为1。

波前 (OPD) 怎麼算的

波前的計算當我們說波前時,事實上通常是指波前 “差”,或是光程差,指的是同一件事。OpticStudio預設使用出瞳作為波前差的計算參考。因此,當我們要計算一條光線的OPD時,此光線會從物面出發後一路追跡穿過光學系統,最終到達像面後,在循原方向後退追跡到 “參考球面”。此參考球面的球心是主光線與像面的交點,半徑是主光線與像面交點到主光線與出瞳面的焦點。然後我們就計算這條光線的總光程,並扣去主光線的光程 (因此主光線的光程差永遠為零,因為他本身就是零的參考點)。要驗證這個敘述,讓我們打開這個內建範例: \Documents\Zemax\Samples\Sequential\Objectives\Double Gauss 28 degree field.ZMX。讓我們在像面之前新增兩個面,第一個面的厚度給予設定求解 = Pupil Position,第二個面給予設定求解 = Pickup,設定為前一個面的厚度乘以-1。並指定第二個面的Radius為求解Pickup,一樣是前一個面的厚度乘以-1。第二個面就是我們所說的參考球面。目前為止設定如下:  然後我們在Merit Function中使用OPTH這個操作數驗證視場1、波長編號2,經過光瞳Py = -1位置的光線以及主光線,兩條光線在參考球面上的光程差。注意我除以波長編號2的波長 (wavelength),因此單位會是波長 (waves)。下面可以看到我們算出來是0.272387 (須乘以一千倍)。然後我們打開OPD Fan並設定如下圖,可以看到Py=-1的時候,波前差確實是-0.272387。現在讓我們來驗證看看離軸的視場,例如說我們想看最大的視場3。首先我們清空評價函數編輯器,然後先暫時把出瞳面的Radius設回無限大。輸入以下資料到評價函數中,目的是計算主光線在出瞳面上的位置、角度以及到像面所經過的光程。記住這三個數字:* Chief ray 在出瞳上的位置是1.651577781670081* Chief ray在出瞳空間中的角度是11.96474523412040* Chief ray從出瞳到像面的距離是110.4592649799319 接下來我們使用Tilt/Decenter工具來移動並傾斜出瞳,如下。然後可以看到系統自動加入兩個Coordinate Break以及相關設定,如下。最後在確保把Chief的

如何輸入量測資料到Grid Sag面

摘要:這篇文章示範了如何輸入量測資料到Zemax OpticStudio中的Grid Sag,表面起伏資料應為Z座標的sag。原文作者:永田信一さん原文發布時間:Feb 7, 2009假設我們有如下資料 表面起伏資料的定義如下。第一行,由7個數字表示。第1, 2個數字,代表X與Y方向的資料數量,資料形式為整數。第3, 4個數字,代表X與Y方向的資料間距,資料形式為浮點數。第5個數字,代表資料的單位,0表示單位是mm。第6, 7個數字,代表整體資料點的偏心量,資料形式為浮點數。第二之後的資料格式如下,z dz/dx dz/dy d2z/dxdy每行都是如上的資料,資料形式為浮點數。z代表sag值。dz/dx dz/dy代表X與Y方向的微分值。d2z/dxdy代表交叉微分值。資料最少需要5x5個點。在Grid Sag面的設定中,若指定使用Bicubic-spline內插的情況,為了使資料點之間sag的內插結果平滑,必須要輸入微分值。但是,若設定所有的微分值為0,或是該資料留白不輸入,Zemax會自訂使用有限差分法 (Finite Difference Method) 來計算微分值。資料的紀錄順序如下:1.    從的面的左上角,也就是Xmin、Ymax開始。2.    下一個輸入的資料是該點的右邊一個值 (就是X方向加一個間隔)。3.    第一行結束後,往地第二行左邊開頭繼續。4.    填滿時,最後一個數字應為Xmax、YminSag資料的基準面不只是平面,也可以是球面、圓錐曲面或是非球面。檔案的副檔名方面,若是在序列模式,應為 “.DAT”,若是在非序列模式,應為 “.GRD”。在序列模式下定義這個面時,面的型態為 “Grid Sag”。曲率半徑、圓錐係數以及非球面係數可以用來定義輸入資料的基礎面。上圖中看到的參數0,代表sag資料的內插形式,0表示Bicubic-spline,1表示線性內插。 輸入的方式,請將 .DAT 檔置於 “\Documents\Zemax\Objects\Grid Files” 資料夾中。請開啟鏡頭數據編輯器,選擇Grid Sag面,並打開面屬性對話框 (Surface Properties)。然後選取您的 .DAT檔,點選 Import,點擊 OK 輸入。資料輸入後,如果想要檢視輸入結果的話,請選擇 “Ribon工具列 > An

关于Opticstudio选用核数跟优化速度的关系

如果一台计算机使用多个CPU进行计算,系统并不总是需要使用所有的CPU.下面的图片显示了一个多CPU/线程工作方式的例子。有些计算只由一个CPU/线程(母线程)执行。 在这段时间里,CPU的利用率很低。有些部分需要多个CPU/线程(平行区域)。 在这段时间里,CPU的利用率很高。如果在OpticStudio中为计算配置了N-cores,OpticStudio不会就获得N-cores。这是因为操作系统决定了应用程序可以使用多少个内核。OpticStudio将根据配置从Windows请求资源。在大多数情况下,OpticStudio并不能获得所有的资源。在计算方面,更多的内核并不意味着更快的计算。这取决于你在做什么样的计算。 如果计算不需要这么多的资源,而且核心/线程的数量超过了需要,那么将数据分配给每个线程的时间会更长。您可以设置OpticStudio在计算过程中可以使用的内核数量。 然而,如上所述,你将只得到所要求的一部分资源。有一个平行计算的理论叫做阿姆达尔定律。X轴代表处理器的数量。Y轴代表加速。不同的颜色代表方案/计算的视差部分的显示。可以看出,使用2到32个内核可以提高速度,但使用更多的内核并不能提高很多速度。就实际计算而言,它更为复杂。可能影响速度的因素有:核心数量、光学系统(有多少种计算可以并行进行)、OpticStudio可以获得的资源数量,由操作系统决定硬件规格等。以上只是可能影响速度的一般因素。 

结合Lumerical和Zemax,一起结伴学习Computational Electromagnetics(计算电磁学)吧

好久不见,关注微纳光学的盆友们应该有关注到目前Lumerical+Zemax的联合解决方案,在7/8月份,我们有两场联合的研讨会,大家可以点开以下链接回看研讨会视频:Zemax 和 Lumerical 工作流程第 1 部分 - 从微观到宏观的光学仿真 (ansys.com.cn)Zemax 和 Lumerical 工作流程第 2 部分- 从微观到宏观的光学仿真 (ansys.com.cn)结合Lumerical和Zemax, 针对不同领域涉及到微观和宏观的系统,我们都可以尝试用此联合方案解决您遇到的仿真和设计问题🥂马上在10月份我们即将正式推出Lumerical+Zemax的RCWA动态链接solution,相信无缝串联的solution可以为大家的设计和仿真带来极大的便利,比如在AR衍射光波导的设计,或者手机摄像头花瓣鬼影的仿真等下面这个研讨会,由Zemax RCWA 设计者Michael Cheng 和Lumerical Zheng Zhou带来,详细介绍了这个新功能,大家可以先睹为快,有任何问题也欢迎提问:使用Zemax OpticStudio与Lumerical RCWA动态连结来设计并优化光波导 (ansys.com.cn)当然大家也可以在此网站内搜索关键词,比如RCWA,或者Meta等来获取相关的知识库文章或者资料分享~Connect with your fellow Zemax-ers | Zemax Community最近我们组内在学习讨论计算电磁学,参考的以下内容,深入简出,可学性很高,欢迎大家跟我们一起来学习哦~~当然可以搭配视频资源, 下面链接里是相关的PDF学习资源~https://empossible.net/academics/emp5337/ 欢迎大家加入学习队伍,一起进步哦~~~啊哈,还有个事,9月份Ansys 光学全线产品Lumerical+Zemax+Speos 会参加深圳CIOE光博会,组内专家全员出动,多个technical talk准备中,欢迎大家关注[Ansys光电大本营]公众号,我们会发布CIOE动态我们深圳见~ 

中继聚光镜系统设计

此文为翻译帖,原文以及附件参考:リレーコンデンサーレンズの設計例について | Zemax Community中继聚光镜系统是照明光学中的基本光学系统。 它的特点是,即使在光源亮度不均匀的情况下,也能实现均匀照明,而且没有能量损失。中继聚光镜系统具有出色的功能。 中继聚光镜光学元件使用两个透镜。第一个镜头被称为聚光镜。它的目的是收集光线,它被设计成在第二个镜头上方形成一个光源的图像。第二个镜头被称为中继镜头,其目的是将第一个镜头的图像引导到受照面。 亮度不均匀的光源是,例如,灯丝和放电管。这些光源的亮度不均匀,但光的分布是均匀的。 一个放置在离光源一定距离的聚光镜被均匀地照亮。通过用中继透镜投射均匀的表面,可以看到被照射的表面也变得均匀照亮。通过将所有入射到聚光镜上的能量转移到中继透镜中来防止能量损失。 最终的镜头数据和布局图如下所示。 最左边的镜头是光源。第一个镜头是聚光镜。第二个镜头是一个中继镜头。 右侧的一端是照明面。 光源很小,如果光源中包括反射元件,得到的光源大小为反射元件的光学尺寸,光源的出瞳即反射系统的出瞳。 中继式聚光镜系统的特点是物面与聚光镜重合。考虑一下OpticStudio中的镜头编辑器是如何组装的。 第一个平面是光阑,它被看作是光源。换句话说,光阑的位置被指定为与物体平面的负距离。与聚光镜使用的是相同的距离。 聚光镜的表面与物体平面对齐,因此可以采用优化方法来减少点斑。然而,应该注意的是,角度过大会导致低照度。 检查为该项目设计的中继式聚光镜系统的照度分布。这是因为聚光镜是圆形的,所以辐照形状也是圆形的。如果聚光镜是矩形的,那么照射形状也将是矩形的。 选择分析→扩展光源分析→几何光学图像分析。有一种复眼透镜,就是由多个上述系统拼合而成。

圖解Ray Database Viewer中Segment的參數

本文章旨在說明Ray Database 分析結果中出現的相關名詞與標示,包含Ray、Segment、Path、Prnt、Levl、In、Hit等等。首先我們設定一個簡單的系統以便說明,這個系統設定如下: 使用Source Ray,並設定#Layout Rays以及#Analysis Rays。這會讓系統僅追跡一條光線,方便我們觀察光線分裂 (Ray Split) 與線段 (Segment) 的關係。物件2與3是兩片BK7平板。Minimum Relative Ray Intensity = 0.005,當光線能量相對於從光源出發時的比例低於此值時,將會停止追跡,此時該光線能量會計入Energy Lost (Threshold) 並顯示在Ray Trace視窗的下方。打開3D Layout並確認勾選 “Use Polarization” 、 “Split NSC Rays” 以及 “Fletch Rays” ,Layout上的追跡結果如下圖 打開Analyze > Ray Database Viewer,打開設定對話框,取消勾選XYZ,勾選Path  設定後點選OK,可以看到如下資訊 表中列出Ray 1在系統分裂後的線段 (Segment) 詳細資訊,Seg# 欄位代表線段編號,光源本身代表Seg# = 0,每一次光線與物件交錯後若有反射、折射、繞射、散射等行為,即產生新的線段,表中線段編號如下 從Ray Database Viewer的報告中可以看到,此光線追跡後共產生16個線段 (Segment),7個分支 (Branch),分支的意思是 “光線從光源追跡到停止為止” 算一個分支,不同的分支可能會包含同樣的中間線段,但最後一個線段一定是不同的。舉例來說,上圖中的分支共有以下17個:Branch1: 0 > 1 > 2 > 3 > 4 > 5Branch2: 0 > 1 > 2 > 3 > 4 > 6 > 7Branch3: 0 > 1 > 2 > 3 > 8 > 9 > 10Branch4: 0 > 1 > 2 > 3 > 8 > 11Branch5: 0 > 1 > 2 > 12 > 13Branch6

公差分析時會看到的Root Sum Square (RSS) 有什麼意義?

簡介在本知識庫中的 “如何進行序列模式公差分析” 這篇文章中,我們簡單說明了RSS的計算方式如下:在所有公差單獨計算之後,OpticStudio可以計算各種不同的統計資料,其中最重要的就是 "Estimated Change" 以及 “Estimated Performance” (本範例中為Estimated RMS Wavefront)。Zemax使用RSS (Root Sum Square) 方法來計算品質的Estimated Change。對於每一個公差操作數,相對於原始設計的評價標準改變量之計算方法是最大與最小公差的評價標準改變各自平方,然後再取平均。最大與最小值之所以取平均是因為它們不可能同時發生,如果相加的話會導致過分悲觀的預測。我們將用公差統計中的堆疊問題 (Stack Up) 說明 RSS 的計算。堆疊問題問題的描述是這樣的:想像我們有5個木板要疊在一起,並需要估計疊在一起的總厚度。已知每一片木板的厚度都有些許不同 (現實世界總是會有誤差!),每片木板的厚度大約在25 mm加減0.1 mm的範圍內隨機分布。假設這些木板的厚度機率是常態分布,中心是25 mm,機率最大,25.1 mm跟24.9 mm的機率則是e^-2,剛好會是距離中心兩倍標準差 (sigma) 的位置,畫出來如下圖。 好,所以現在問題是,如果我們疊了5塊木板以後,厚度的機率分布會變成怎樣? 答案是125 mm加減0.224  mm。並且也會是常態分佈。以125作為中心,125.224與124.776的位置發生機率恰好是e^-2。換句話說,整個系統的總厚度:1. 也是常態分佈。2. 常態分佈中心剛好是每塊木板的各自機率分佈的中心的總合:5+5+5+5+5=125。3. 整個系統常態分佈機率為e^-2的地方,會是每塊木板各自常態分佈為e^-2時的偏差值 (deviation) 各自平方後、再加總、再開根號,也就是所謂的Root Sum Square (RSS),你可以在Excel中輸入這右邊這串計算來驗證:sqrt(0.1^2+0.1^2+0.1^2+0.1^2+0.1^2)。答案正是0.224。詳細的證明可以參考Wiki的說明:https://en.wikipedia.org/wiki/Sum_of_normally_distributed_random_variables解讀與假設看

如何模擬光學低通濾波器 (Optical Low Pass Filter)

簡介光學低通濾波器 (optical low-pass filter, OLPF) 廣泛應用於高階成像系統中,通常放置在CCD或COMS的前方。主要的功能是過濾影像中特定的空間頻率,避免因為空間頻率跟感測器取樣頻率過於接近時,因為發生混疊 (Aliasing) 而造成摩爾紋 (Moiré)。解決這種問題可能的做法有好幾種,目前最為符合量產可行性的常見作法之一就是利用雙折射晶體把光路分裂,透過控制分裂距離,來消除特定的空間頻率。經過光學低通濾波器處理系統,反應在MTF上的效果就是特定頻率的對比會下降,如同我們使用IR-CUT削去紅色波長一樣,OLPF也可以過濾不希望出現的空間頻率。建立雙折射晶體這邊我們打開內建範例: \Documents\Zemax\Samples\Sequential\Objectives\Double Gauss 28 degree field.zmx我們將會在像面 (IMAGE) 之前建立光學低通濾波器的結構,示意圖如下: 要建立這個結構,我們在LDE中新增五個面,並設定如下: Surface 12: Birefringent InThickness: 0.1Material: CALCITEY-cosine: 1Z-cosine: 1Surface 13: Birefringent OutThickness: 0.1Surface 14: Jones MatrixThickness: 0.1A (real, image) = (1, 1)B (real, image) = (1, -1)C (real, image) = (1, -1)D (real, image) = (1, 1)Surface 15: Birefringent InThickness: 0.1X-cosine: 1Z-cosine: 1Surface 16: Birefringent OutThickness: 0.1由於在像面之前加上幾片玻璃,我們需要重新對焦,因此這裡打開Quick Adjust,調整透鏡最後一個面的厚度,如下: 最後打開多重組態編輯器,並設定如下。 由於在序列模式中我們無法讓光線分裂,因此要模擬雙折射分裂,必須使用多重組態來模擬。每個雙折射晶體都會依據偏振方向分裂為兩個光路,兩個雙折射晶體共會有4個組合,關於雙折射晶體的設定與模擬方式請參考Help文

用Zemax OpticStudio模擬投射式車燈 (分析色散)

本範例將會示範在Zemax OpticStudio模擬一個初步簡易的投射車燈,主要目的在於介紹各種模擬中使用者可能會用到的功能,包含Lens Catalog、光源建模、光源頻譜、拋物面建模、設置探測器、色彩分析以及照度分析。簡介本文章介紹如何在Zemax OpticStudio中模擬投射式車燈,主要分為以下章節:    使用透鏡資料庫 (Lens Catalog)    建立拋物面物件    建立鎢絲光源,設定黑體輻射頻譜    建立擋板物件    設定探測器    追跡並檢視結果我們的最終架構將如下: 建立橢圓反射面橢圓反射面可以把其中一個焦點的光線反射到另一個焦點。 我們透過Standard Surface來建立。 參數設定如下:Material:MIRRORRadius:30.165Conic:-0.712Maximum Aper:50 建立光源我們將建立帶有黑體輻射頻譜的鎢絲光源,首先是光源的外型,新增物件定設定如下:Object 2: Source FilamentX Position:3Z Position:16.126Tilt About Y:-90Layout Rays:100Analysis Rays:2E7Length:5Radius:0.6Turns:8接下來點一下 NSCE 上灰色的 Object Properties選擇 Source 並設定黑體輻射頻譜如下圖:Source Color: Black Body SpectrumTemp (K): 5000Spectrum: 7、Wavelength From 0.44 To 0.64 備註:    OpticStudio 內建許多常見的頻譜模型,例如黑體輻射、LED、D65 標準白光等    也可以根據三色刺激值、色座標、sRGB 等資訊模擬頻譜    有需要也可以使用純文字文件夾自行定義 備註2:想要確認頻譜的時候,可以到Libraries > Source Spectrum Plot,輸入與剛剛一樣的頻譜設定   如所見到的,Source Spectrum Plot 用繪圖方式讓你瞭解剛剛的光源頻譜是如何設定的,這是個很方便的工具。你可以試著改變參數看看,如下圖:現在回到3D Layout設定,設定Color Rays: Wavelength,可以看到如下:  備

Badge winners

  • Allow me to introduce myself
    Sean Turnerhas earned the badge Allow me to introduce myself
  • Allow me to introduce myself
    saifhas earned the badge Allow me to introduce myself
  • Visibly Un-Polarized
    chaasjeshas earned the badge Visibly Un-Polarized
  • Visibly Un-Polarized
    Sean Turnerhas earned the badge Visibly Un-Polarized
  • Allow me to introduce myself
    Davidhas earned the badge Allow me to introduce myself
Show all badges