ZEMAX | 如何尋找?guī)缀五e(cuò)誤
本周為大家奉上
如何尋找?guī)缀五e(cuò)誤
概要
這篇文章講解了:
· 在非序列模式中造成幾何錯(cuò)誤(錯(cuò)誤10561)的各種原因。
· 如何診斷這些錯(cuò)誤。
介紹
使用 OpticStudio 做設(shè)計(jì)的時(shí)候,必須得知道得到的結(jié)果是否是正確的。尤其是在非序列模式下,復(fù)雜的幾何模型可以互相嵌套,此時(shí)如何知道建模是否有問題呢?
在非序列模式或者混合序列模式中( Mixed Sequential/Non-Sequential Mode),都可能會(huì)遇到幾何錯(cuò)誤。幾何錯(cuò)誤會(huì)在光線遇到幾何體的某些區(qū)域并無法繼續(xù)追跡的情況下。這些錯(cuò)誤會(huì)在軟件界面上彈出,并且同時(shí)寫入光線數(shù)據(jù)庫用于后期分析。事實(shí)上,看到這些錯(cuò)誤未必證明系統(tǒng)有問題,相反,這些錯(cuò)誤提示是用來告訴用戶更多的信息。分析這些錯(cuò)誤信息可以讓人確信系統(tǒng)建模的正確性。
當(dāng)遇到幾何錯(cuò)誤的時(shí)候,最重要的是要知道它們是如何產(chǎn)生的,以及如何找到這些信息。在 OpticStudio 中內(nèi)建了一些重要的工具來,它們可以回答上述問題。
幾何錯(cuò)誤發(fā)生的原因不唯一。在本文中我們會(huì)介紹最常見的幾種幾何錯(cuò)誤的原因,并且說明如何找到并修正它們。這些方法可以幫助您診斷復(fù)雜的文件,看看其中的幾何錯(cuò)誤是否需要著重考慮。最常見的三種幾何錯(cuò)誤的來源列表在下方:
原因 | 特點(diǎn) |
誤的混合序列模式出口或入口位置 | 混合序列模式的入口和出口不允許和非序列物體相交,也不可以和非序列物體的某個(gè)表面完全重合。入口和出口必須和非序列物體保必須持超過膠合距離( glue distance )。 |
錯(cuò)誤的光源位置 | 光學(xué)可以放置在物體內(nèi)部,但必須在非序列物體編輯器里面標(biāo)明“在...內(nèi)部”( inside of )標(biāo)簽。光源不能與物體的某個(gè)表面相交,即要么完全在物體外部,要么全部在物體內(nèi)部。如果光源放置不正確則會(huì)導(dǎo)致幾何錯(cuò)誤。 |
錯(cuò)誤的實(shí)體模型 | 有的時(shí)候,用戶自定義的物體未能正確定義,那么也會(huì)造成幾何錯(cuò)誤,譬如多面體物體( Polygon Object )或外部導(dǎo)入的物體。如果多面體物體沒能正確閉合,那么 OpticStuio 便不能判定光線是否已經(jīng)射出該物體,因而會(huì)造成幾何錯(cuò)誤。 |
錯(cuò)誤信息中包含了什么內(nèi)容?
在混合系列模式出現(xiàn)幾何錯(cuò)誤的時(shí)候,絕大多數(shù)情況都是因?yàn)殄e(cuò)誤的入口或出口位置擺放。如果切換進(jìn)純非序列模式中,錯(cuò)誤信息會(huì)包含很多有用的內(nèi)容,即光線在何處發(fā)生了幾何錯(cuò)誤。系統(tǒng)發(fā)出的幾何錯(cuò)誤提示類似于以下這個(gè):

該錯(cuò)誤信息提示了第一根光線就沒能正確追跡。
· 第一行 – 第一行包含了非序列物體表面序號以及發(fā)出光線的光源物體序號。此處“非序列物體表面”指的是混合序列模式中作為非序列入口的那個(gè)表面。如果在混合序列模式文件中有超過一個(gè)的非序列物體,那么這個(gè)序號將會(huì)很有用。在純非序列模式中,此“非序列物體表面”序號永遠(yuǎn)為1。光源序號則代表了非序列物體編輯器中光源物體的號碼。請注意,如果光源序號為0則代表了錯(cuò)誤光線來自于混合序列模式中的序列入射光。
· 第二行 – 第二行指示了發(fā)生幾何錯(cuò)誤的非序列物體序號。
· 第三行與第四行 – 第三行和第四行說的是光線出射位置的在全局坐標(biāo)下的位置與方向余弦。對于混合序列模式系統(tǒng),全局坐標(biāo)會(huì)以入口的頂點(diǎn)最為參考。請注意,在更新混合模式系統(tǒng)的時(shí)候 OpticStudio 在后臺(tái)會(huì)發(fā)出一些特定的光線來確定系統(tǒng)的基本屬性。因此,如果發(fā)生幾何錯(cuò)誤,那么該錯(cuò)誤即來自于后臺(tái)發(fā)出的光線中的一條。而發(fā)生錯(cuò)誤的光線,未必就是用戶在 3D 布局圖里面繪制的光線。
綜上所述,有時(shí)候幾何錯(cuò)誤發(fā)生的位置會(huì)顯而易見,但有時(shí)候還是需要分析光線傳播的路徑才能有效判斷。由于我們已經(jīng)有了錯(cuò)誤光線的起始點(diǎn)坐標(biāo)和方向余弦,我們便可以建立一個(gè)光線光源( Source Ray )來模擬該錯(cuò)誤光線傳播通過系統(tǒng)的情形。OpticStudio 內(nèi)置了一個(gè)工具來自動(dòng)創(chuàng)建錯(cuò)誤光線,用于分析。
“生成錯(cuò)誤光線”( Create Error Ray )工具
每當(dāng)幾何錯(cuò)誤發(fā)生時(shí),OpticStudio 會(huì)儲(chǔ)存那根光線的起始點(diǎn)坐標(biāo)和方向余弦。這些信息可以用來創(chuàng)建一根光線來復(fù)盤之前的幾何錯(cuò)誤。當(dāng)幾何錯(cuò)誤發(fā)生之后,您可以讓 OpticStudio 生成一個(gè)光線光源來作為錯(cuò)誤光線。方法如下:Setup > Create Error Ray:

點(diǎn)擊這個(gè)按鈕之后,OpticStudio 便會(huì)自動(dòng)在非序列物體編輯器里面根據(jù)相應(yīng)的坐標(biāo)和方向余弦生成光線光源,同時(shí)把其他光源的分析光線條數(shù)和陳列光線條數(shù)同時(shí)設(shè)為0。當(dāng)用以分析幾何錯(cuò)誤的光線建立之后,您就可以通過布局圖,光線數(shù)據(jù)庫查看器等功能來分析診斷造成幾何錯(cuò)誤的原因。在分析的時(shí)候,建議臨時(shí)開啟“忽略追跡錯(cuò)誤”,以避免 OpticStudio不斷地報(bào)告錯(cuò)誤:

請注意這個(gè)選項(xiàng)是全局的,選擇后會(huì)自動(dòng)勾選上光線追跡選項(xiàng)中的“忽略錯(cuò)誤”復(fù)選框:

如果要保存并查看光線追跡的詳細(xì)信息,請勾選“忽略錯(cuò)誤”并把光線數(shù)據(jù)保存成指定的文件名(擴(kuò)展名為 .ZRD )。
在光線數(shù)據(jù)庫里(分析>光線追跡分析>光線數(shù)據(jù)庫查看器),您可以查看光線傳播的詳細(xì)情況,并方便地找到光線在何處發(fā)生了錯(cuò)誤(在 Z 列中用*標(biāo)記)。用這個(gè)方法您可以看到光線發(fā)生錯(cuò)誤時(shí)所在地物體序號、物體的表面序號,以及完整地光線傳播路徑。如果要對模型進(jìn)行修改以避免錯(cuò)誤,這個(gè)技巧便十分重要。

幾何錯(cuò)誤對系統(tǒng)的影響
幾何錯(cuò)誤可能來自于模型中錯(cuò)誤,會(huì)導(dǎo)致不正確的光線追跡結(jié)果。但是,在一些設(shè)置完全正確的系統(tǒng)中也有可能會(huì)出現(xiàn)偶然幾根光線的幾何錯(cuò)誤,其主要原因是光線打到了表面之間的不連續(xù)處,以至于軟件無法計(jì)算下一步追跡的方向。這樣的錯(cuò)誤光線會(huì)被 OpticStudio 的算法舍棄。在多數(shù)情況下,只要追光后“能量損失(錯(cuò)誤)”這個(gè)值相比于光源的總光強(qiáng)而言非常小,那么這些個(gè)別的錯(cuò)誤光線就能安全地被忽略掉。
當(dāng)光線追跡完成后,OpticStudio 會(huì)匯報(bào)出能量損失(閾值)和能量損失(錯(cuò)誤)。

上述數(shù)據(jù)是絕對大小,而非相對值(如:瓦特)。如果能量損失的值較大,那么需要進(jìn)一步調(diào)查其原因。如果能量損失值很小,那么這些問題就可以忽略掉,且認(rèn)為結(jié)果是正確的!
總結(jié)
當(dāng) Optic Studio 不知道下一步該如何追跡光線的時(shí)候,便會(huì)產(chǎn)生幾何錯(cuò)誤。常見的原因是物體或者表面的構(gòu)建或者位置擺放有問題。具體包括:
· 混合模式下錯(cuò)誤的入口與出口的位置
· 錯(cuò)誤的非序列光源位置
· 無效的實(shí)體模型
您可以參考系統(tǒng)發(fā)出的幾何錯(cuò)誤信息來尋找錯(cuò)誤發(fā)生的位置。有的系統(tǒng)中幾何錯(cuò)誤無法完全避免,但是少數(shù)的幾個(gè)幾何錯(cuò)誤是無關(guān)緊要的,可以忽略。