产品组合
查看所有产品Ansys致力于通过向学生提供免费的仿真工程软件来助力他们获得成功。
Ansys博客
December 18, 2023
Henyey-Greenstein模型描述了由小颗粒散射的光所具有的角分布。该模型已应用于多种场景,从生物组织对光的散射到星际尘埃对光的散射等。
我们来了解一下如何使用用户定义的对象(DLL文件)在下面的非序列模型中对Henyey-Greenstein体散射进行建模。
在Henyey-Greenstein模型中,散射光的角分布由以下方程给出:
Henyey-Greenstein模型
参数g描述分布。g=0时,该模型说明:材料在所有角度上散射概率均匀;当g接近1时,分布会在θ=0度左右时达到高峰值。θ角定义为散射光线与镜面光线的夹角;θ=0度是指沿镜面光线向前散射;而θ=180度则是指沿镜面光线向后散射。
Ansys Zemax OpticStudio安装程序中包含了用户定义的DLL,允许用户将该体散射模型应用于任何非序列体。我们将使用以下示例中的“Henyey-Greenstein-bulk.dll”来展示Henyey-Greenstein模型的角度和功率分布。
让我们来看一个示例,其展示了如何在OpticStudio中实施Henyey-Greenstein模型。该系统包含的源光线以法向入射角向矩形体发射光线,Henyey-Greenstein散射分布已应用到其中。此分布通过指定用户定义的DLL,应用于该矩形体中。
在OpticStudio中,Object Properties > Volume Physics中的设置可控制应用于矩形体的体散射模型类型。在本示例中,“model”是DLL定义的散射,选定的DLL文件是“Henyey-Greenstein-bulk.dll”。该DLL以及相应的源代码位于“{Zemax}\DLL\BulkScatter”文件夹中。
图1:Henyey-Greenstein-bulk.DLL。
DLL的输入是“透射”(描述了在散射过程中衰减的输入功率)以及上述方程中的参数g。为了测量不同角度散射的光线,已将三个小型探测器布置在与示例系统中的实体保持均匀距离的位置,角度为入射光线角的0度、30度和60度(参见图2)。
图2:在未启用散射的情况下进行的NSC 3D Layout。
注意,图2显示的是未启用散射的NSC 3D Layout工具,因此我们只看到镜面路径。在打开散射分析结果之前,我们可以展开来查看源光线:Object Properties > Source。您会注意到,在图3中,已对系统进行设置,明确规定只为每条入射光线提供一个散射实例。
图3:显示将体散射更改为一次的位置。
OpticStudio中的默认“Bulk Scatter”设置为“Many”,这意味着光线可能会在介质中散射多次。若选择“Once”,则光线的每个分支只能进行一次体散射。如果光线在散射(例如在散射体的界面)之前发生分割,那每条子射线可能都会散射,因为每条子射线的分支都是第一次散射。如果选择“Never”,则来自该光源的光线就不会出现体散射。
在“Layout Settings”中选中“Scatter NSC Rays”复选框,可以在NSC 3D Layout工具中观察散射(参见图4)。
图4:显示的是可以在NSC 3D Layout工具中观察到的散射。
许多光线错过了探测器,而且这些光线只绘制了很短的距离,以显示其方向。要更改这些光线绘制的距离,请参见图5中System Explorer > Non-Sequential下的“Missed Ray Draw Distance(未命中光线绘制距离)”框。
该参数是绘制错过所有对象的光线段的距离。如果该值为零,OpticStudio将在绘制错过的光线时为该参数选择默认值。
我们可使用过滤字符串,只分析在矩形体中散射并击中探测器矩形的光线。在绘制或显示光线之前,过滤字符串定义了一个光线必须通过的“测试”。过滤字符串语法由命令或标志之间的逻辑运算组成,其可指明光线是否击中对象、未命中对象、从对象反射、折射、散射、衍射或发生鬼影反射。
过滤字符串命令的完整列表,可在OpticStudio帮助文件中获取。
我们将使用以下标志:
图5:如果未命中光线绘制为零,OpticStudio将在绘制未命中光线时为此参数选择默认值。
因此,要显示矩形体(对象2)内体散射并击中其中一个探测器(对象3、4和5)的光线,我们可以使用过滤字符串“B2 &(H3 | H4 | H5)”。在NSC 3D Layout工具或阴影模型中,该过滤字符串可用于布局光线(参见图6)。
图6:在NSC 3D Layout或阴影模型中,过滤字符串可用来布局光线。
将结果保存至Ray Database时,过滤字符串可在“Ray Trace Control”窗口用于“Analysis Ray”。
图7:显示如何将过滤字符串用于在“光线追踪控制”过程中“分析光线”。
然后在总功率为1 W(透射系数为1)的情况下,发射5,000,000条分析光线,测量落在每个探测器上的功率分布。g=0.001及g=0.5的结果如下表所示。