OpticStudio支持哪些散射模型
概述
這篇文章總結了OpticStudio中支持的所有表面和體散射模型。
介紹
在任何光學系統(tǒng)中,光線可能會在表面邊界(例如粗糙的表面)或在特定介質中(例如光和粒子間的相互作用)發(fā)生散射。這兩種散射現象都可以在OpticStudio的非序列模式下建模仿真。
OpticStudio提供了多種模型來描述表面散射和體散射。本文會總結性的介紹這些散射模型。您可以在用戶手冊中的非序列章節(jié)中查看每種模型的詳細介紹,您也可以在Zemax知識庫中的Non Sequential Ray Tracing > Sources, Splitting and Scattering標簽下查找相關技術文章。
表面散射模型
在OpticStudio中有許多散射模型,這包括OpticStudio內置的模型以及DLL用戶自定義模型。這些模型通常使用雙向散射分布函數(BSDF)來描述:

其中dLs表示散射輻射,dEi表示入射光輻照度,θ表示光線與表面法向量之間的極角,φ表示方位角,下標i和s分別表示入射光和散射光的方向。BSDF不僅可以用角度坐標θ和φ來定義,還可以通過向量x。向量x表示散射光線和反射光線在平面上的投影的差向量。

詳細信息請參考Zemax用戶手冊的“Non-Sequential Component”一章。

朗伯散射 (Lambertian)

·散射光的發(fā)射向量指向投影平面上的各個地方的概率相同。
·散射強度和cos(θs)相關
·散射強度與入射角無關
高斯 (Gaussian)

·散射分布在方向余弦空間中對稱
·σ決定了在投影平面上高斯分布的寬度
·σ的最大值為5(如果大于5則分布接近于朗伯散射)
ABg

·廣泛應用于模擬粗糙表面造成的各向同性的隨機散射模型
·其中輸入量A, B, g 在ASCII文件中提供 ( 保存在根目錄下ABg_Data文件夾中 )
·輸入量的定義域為A >= 0, B >= 1.2E-12 ( 只有在g = 0時,B = 0才成立 )

朗伯散射 (Lambertian)

·與內置的朗伯散射模型相同,主要用來演示如何編寫DLL
雙高斯 (Double Gaussian)
BSDF: 高斯分布和朗伯散射分布的組合
·用戶可以指定朗伯分布和高斯分布的能量比
·該模型建立了兩個高斯分布,并且輸入的寬度σ和能量比例相互獨立
· 用戶需檢查能量比例系數總和小于1
高斯XY (Gaussian_XY)
用概率分布代替BSDF進行定義:

·在投影平面上描述了一個高斯分布
· 其中P在入射平面中,q與入射平面垂直(除非在特殊情況下,坐標軸(p,q)和系統(tǒng)的坐標軸(x,y)并不相同)
· σp和σq應該大于0或小于1(否則使用朗伯散射模型即可)
· 更多詳情請參考知識庫文章“How to Create a User-Defined Scattering Function”
K-correlation

·模擬表面細微的粗糙程度引入的散射
· 與ABg模型的基礎上額外引入了很小的角度偏移模擬大多數表面拋光時的情況
·σ表示均方根表面粗糙度;其他輸入量的定義請參考知識庫文章“How to Surface Scattering via the K-correlation Distribution”
RI_BSDF
BSDF通過ASCII輸入
·該模型用來模擬通過實驗測得的表面散射屬性數據,而非使用算法進行擬合
· 輸入數據的格式請參考知識庫文章“BSDF Data Interchange File Format Specification”
·有關應用OpticStudio的建模數據,請參考知識庫文章“How to Use Tabular BSDF Data to Define the Surface Scattering Distribution”
如果上述列出的所有分布無法模擬您需要的表面散射屬性,您可以編寫自己的DLL模型,有關自定義散射函數的相關信息請參考知識庫文章“How to Create a User-Defined Scattering Function”
體散射模型
OpticStudio中支持很多種體散射模型。同樣包括內置的散射模型和用戶自定義DLL模型。這些模型通常通過描述概率分布函數P來定義散射角。在所有案例中,散射的發(fā)生概率通過指數形式來定義:

其中x為光線在介質中傳播的距離,式中μ = 1/M并且其中的M為介質中散射的平均自由程。在發(fā)生體散射的過程中,光線的軌跡發(fā)生改變,并且散射光的波長也可以產生變化。用戶可以利用這一點對熒光進行模擬(詳情請參考知識庫文章“How to Model Fluorescence Using Bulk Scattering”)。更多信息請參考Zemax用戶手冊的“Non-Sequential Component”一章。

角度 (Angle)

·散射的概率分布在任意角度下為常數
·用戶可以通過輸入參數“Angle”來定義光線發(fā)生散射的最大角度。

Bulk_samp_1

·和內置的角度散射模型相同;用來演示如何編寫DLL
Poly_bulk_scat

·使用多項式定義散射的角度分布
·求和范圍為i=0到i=12 (可以使用12階多項式建模)
Henyey-Greenstein_bulk

模擬由微小粒子造成的散射
可以有效模擬生物組織和太空塵埃云
輸入量g的取值范圍為1.0E-4(均勻的角度分布)到1.0(分布在θ=0時形成一個銳利的尖峰)
更多詳情請參考知識庫文章“Using the Heney-Greenstein Dstribution to Model Bulk Scattering”
瑞利散射 (Rayleigh)

模擬由微小粒子(粒子尺寸遠小于波長)造成的散射
平均自由程正比于波長的四次方
更多詳情請參考知識庫文章“Bulk Scattering with the Rayleigh Model”
米氏散射 (Mie)
Craig F. Bohren and Donald R. Huffman, “Absorption and Scattering of Light by Small Particles”, John Wiley & Sons (1983).
用于模擬粒子尺寸與波長的比為任意值的散射
主要用于描述大氣散射
更多詳情請參考知識庫文章“How to Simulate Atmospheric Scattering using a Mie model”
如果上述列出的所有分布無法模擬您需要的體散射屬性,您可以編寫您自己的DLL模型,您可以在上述提供的DLL代碼的基礎上進行修改得到。