光线追迹(Ray Trace)


光线追迹控件用于发射和追迹光线,用于定义光源、物体和探测器的分析。光线追迹控件各选项定义如下所述。

清空探测器(Clear Detectors) 选择清空"全部(All)"或任何一个特定的探测器。这样会将探测器全部像素上的能量重置为零。
清除并追迹(Clear & Trace) 清除所选探测器上的数据,并开始追迹光线。详细信息请参考"清空探测器"和"追迹"设置。
追迹(Trace) 开始追迹所有自定义光源发出的光线。追迹开始之后,只有"中止(Terminate)"和"自动更新(Auto Update)"选项可用。有关启动光线追迹的其它效应,请参考下方"详述"。
自动更新(Auto Update) 如果选中,所有探测器将周期性更新,以便监控追迹进度。
内核数目(# CPU's) 选择为执行光线追迹任务分配的CPU数量。即使在单CPU的计算机上也可以选择多个内核,在这种情况下,单CPU将分时执行多个并发计算任务。默认情况下为操作系统检测到的处理器数量。使用更多的CPU可以加快计算速度,但是需要的内存也会显著增加。如果OpticStudio显示内存不足的错误,或者开始使用硬盘作为内存缓存,则需要减少所使用的CPU数量。
使用偏振(Use Polarization) 如果选中,则在确定光线的能量、反射、透射、吸收、薄膜和镀膜影响时将考虑偏振效应。如果"光线分裂"被选中,则"使用偏振"将自动选中,因为光线分裂需要考虑偏振效应以提高准确性。
有关OpticStudio如何使用偏振的详细信息,请参考系统选项中的偏振(系统选项)。
NSC光线分裂(Split NSC Rays) 如果选中,光线在交界面处将根据"光线分裂"中定义的属性分裂光线。
NSC光线散射(Scatter NSC Rays) 如果选中,光线在交界面处将根据界面的散射属性散射光线。
忽略错误(Ignore Errors) 如果选中,光线追迹产生的错误将被忽略,并且出现任何错误都不会中止光线追迹。使用此功能应当注意的是,错误可能表明追迹的系统存在严重问题。然而就算是某些性能出色的系统偶尔也会出现少数光线追迹失败的情况,这是由于有限的计算精度及其它小问题导致的。如果光线追迹结束后报告的"能量损耗(错误)"显示的功率远小于所有定义光源的总功率时,则可以安全地忽略这些触发错误的光线。详细信息请参考"能量损耗"。
保存光线(Save Rays) 如果选中,光线数据将以指定文件名进行保存。文件名应该带有正确的扩展名(ZRD、DAT、SDF或TM25RAY),且不包含文件夹名称。另请参考"过滤器"和"将光线数据保存到文件"。
保存路径数据(Save Path Data) 如果选中,路径数据将以指定文件名保存为PAF文件。PAF文件包含相同的信息,而且路径数据可以更快地从PAF文件中保存和加载。目前,PAF文件只能在路径分析工具中使用。在光线追迹过程中,生成的PAF会忽略过滤选项。
字符串(Filter) 此选项仅在选中"保存光线"时可用。如果字符串输入不是空白,则所定义的过滤字符串将应用于每一束追迹的光线上,并将过滤后的光线保存到文件中。只有经过字符串过滤后的光线才会被保存。这会显著降低需保存的数据量,因此减小保存的文件大小。有关过滤器语法的详细信息请参考过滤字符串。
详述(Discussion)
在执行蒙特卡罗光线追迹时,有一些需要重点注意的事项。当清空探测器时,每个像素上记录的所有能量计数都会重置为零。点击"追迹"按钮之后,OpticStudio会根据非序列模式元件编辑器所列光源的分析光线条数追迹相同数目的光线。每个光源都有对应的功率,并且以瓦特或其它单位表示(请参考"分析单位")。从给定光源中发出的每根光线的初始强度为该光源的总功率除以分析光线的条数。例如,总功率为1瓦的光源追迹1,000,000条光线,则每条光线具有的初始功率为1.0E-06瓦。
如果光线追迹过程在所有光线完成追迹之前中止,则探测器物体中列出的总功率和峰值功率会计算得不准确,尽管已追迹的光线的分布是准确的。光线追迹不支持暂停和恢复功能,因此一旦光线追迹被中止,再次点击追迹将开始全新的光线追迹。
如果清空探测器后按下追迹按钮,则光线追迹过程完成,如果这时再次按下追迹按钮,则所有探测器将会显示两次追迹叠加后的总功率结果。由于光源可以随时被添加、删除或修改,因此OpticStudio无法准确地统计两次清空探测器操作之间进行的光线追迹的次数。
为了准确计算功率,在每次运行光线追迹之前都应清空探测器,并且不要在追迹过程中中止追迹。
将光线数据保存到文件
如果选中"保存光线"选项,则会将某些或所有追迹的光线数据保存到文件中。所保存数据的类型取决于这里输入的文件扩展名。
如果文件扩展名是.ZRD,则会保存完整(或经过字符串过滤)的光线数据。此光线数据文件将保存在与追迹的镜头文件路径相同的文件夹中。在OpticStudio中,ZRD格式文件用于在光线数据库查看器中查看光线数据(参阅"光线数据库查看器")。有关ZRD格式的详细信息请参考"光线数据库(ZRD)文件"。
如果扩展名是.DAT、.SDF或.TM25RAY,则入射到特定物体(可选择过滤)的光线会被保存为一个光源文件。这一文件格式为光源文件物体(参考"光源文件")。
如使用光源文件格式,则文件名必须为n-filename.DAT或n-filename.SDF的形式,其中n是特定物体的编号且为整数。在这种情况下,系统会创建filename.DAT、filename.SDF或filename.TM25RAY(已移除n-部分),文件中包含所有入射到编号为n的物体的光线数据。
例如,文件名"11-ReferenceObject.DAT"会将所有照射到物体11的光线保存到"ReferenceObject.DAT"文件中。文件将被存放在<objects>\Sources\Source Files文件夹中(请参考"文件夹")。如果文件扩展名为.DAT,则会使用旧版的"仅光通量"格式存储光线数据,并且波长数据将会丢失。
如果一条光线路径与一个物体上的多个面相交,则与一个面相交的每个光线段将在源文件中生成一条单独的光线。
这将生成更小的文件,建议仅在单色光源的情况下使用。如果文件扩展名为.SDF,则会使用新版的"光谱颜色"格式存储光线数据,并且存储每条光线的波长数据。有关光源文件格式的详细信息请参考"二进制光源文件格式"。
保存光线会显著降低计算速度,因为将数据写入文件会比光线追迹慢很多。因此,应该仅在需要将光线数据用于后续分析时,才使用保存光线功能。
如果选中"保存路径数据"选项,则路径/光程数据将保存到PAF文件中。此文件类型不支持其他功能,只保存用于提取路径信息的数据子集,如每条路径的光线数(分支路径)、光线照射到物体的顺序以及路径光通量。
能量损耗
在对某些NSC系统进行追迹时,并非每条光线都能成功追迹。当光线追迹因错误而中止后,与该光线相关联的能量称为"能量损耗"。能量损耗的单位与光源能量单位相同(请参考"光源单位")。有多种原因可以使特定光线追迹被中止:
- 如果光线在追迹过程中能量下降至最小能量阈值以下,则这条光线的追迹会中止。
最小相对和绝对能量阈值在"非序列模式(系统选项)(Non-sequential (system explorer))"中有详细说明。
光线追迹控件会报告由于阈值设置而产生的能量损耗。
- 有时几何误差或舍入误差会导致光线追迹无法继续进行。几何误差通常是由成型不良的实体或不合适的物体嵌套所导致的。当某个表面的迭代失败或者无法计算膜层数据时,有可能造成一些光线的入射点和折射数据计算有误。当光线经过物体的交点、嵌套层或线段数量达到所设定的最大值时,光线追迹同样会报错并中止。光线追迹控件会将这类错误造成的损耗显示在能量损耗中。
- 当光线入射到物体边缘时,有可能由于局部反射和/或折射的计算错误造成追迹中止。如果光线入射点与物体边缘或多个物体的交界面上法线非平行的点的距离在一定阈值内,则认为光线入射至物体的边缘处。对于大多数物体,阈值距离近似于以镜头单位表示的胶合厚度。在沿着多面体的边缘方向上,阈值距离近似为胶合厚度(此数值为无量纲数)乘以多边形面的边数。请注意,光线入射点与部件边缘距离非常近时,无论如何也无法给出准确的物理解释;光线在实际物体上的入射点与边缘距离为几个波长之内时,会对入射的所有光能量发生衍射(或散射)效应。当光线错过所有物体,或者被膜层吸收、体透射或被探测器吸收时,会中止光线追迹。OpticStudio在处理所有这些吸收光线时,不会将这些光线的能量视为能量损耗,因此不提示错误或报告,这是因为我们已知这些能量被系统吸收或传播到系统之外,这些能量在系统计算范围之内,因此不属于能量损耗。
如果能量损耗的比例较小,则可以忽略能量损耗。即使是精心设计的精确光学模型,偶尔也会出现伪光线追迹错误。那些入射点在部件的边缘或多部件衔接处而被吸收的光线,通常只是系统总能量中的很小一部分。如果能量损耗异常偏高,则需要检查设置(请参考"最小相对光线强度")和物体几何形状。如需进一步研究几何错误,请参考"错误光线工具(Create Source Ray From Last Geometry Error Tool)"。
下一部分: