- 介绍
Sol Trace是美国国家可再生能源实验室( NREL )开发的用于聚光太阳能光学系统建模和性能分析的软件工具。虽然最初是为了太阳能应用,但该代码也可以用于建模和表征许多通用光学系统。该代码的创建是由于需要建模比现有工具(约尔根森, 1991) (包括OPTDSH ( Steele et al , 1991)和CIRCE ( Ratzel和鲍顿, 1987) )更复杂的光学系统。Sol Trace可以建模抛物槽式聚光器以及碟式、塔式或其他独特的几何形状(线性发电塔、太阳能炉等。),它将光学几何形状建模为由光学元件组成的一系列阶段,这些光学元件具有丰富的可用属性,使用其他软件包(例如, Excel等。)。
同时遇到各种光学相互作用。其中一些相互作用在本质上是概率性的(例如,从太阳角强度分布中选择太阳角),而另一些相互作用是确定性的(这种代码与基于矩卷积的代码相比的优点在于它复制了真实的光子相互作用,因此可以为无法建模的复杂系统提供准确的结果。缺点是处理时间较长。准确性随着跟踪的射线数量增加而增加,并且更多的射线数量意味着更多的处理时间。此外,复杂的几何图形转化为更长的运行时间。然而,所需的射线数量也是期望结果的函数。例如,为了准确评估同一聚光器接收器上的通量分布,需要更少的光线(时间更短)来确定给定太阳能聚光器上不同太阳角度的光学效率的相对变化。因此,用户有责任安全高效地使用代码。
该应用程序使用C + +编写,并使用跨平台的Qt工具包,使其能够在Windows和Mac OS X操作系统上运行。核心跟踪过程与图形用户界面分离,并允许将计算代码合并到其他系统和应用程序中。SolTrace非常适合在具有多个处理器的计算机上运行,因为每个单独的光线都可以独立地计算。具有n个处理器的计算机在单个处理器上一般会经历接近x的速度提升,但这种趋势会受到各种因素的限制,包括特定几何体的特定性质或其他计算机硬件限制(记忆等)
图1。可视化前交叉页的例子散射和射线图为高通量太阳能炉的例子文件。
- 方法论
在SolTrace中,光学系统被组织成全局坐标系下的"阶段"。工作台是光学几何学中的一个部分,一旦光线离开工作台,光线在其余部分通过系统的路径上将不再进入工作台。一个完整的系统几何可以由一个或多个阶段组成。用户有义务对舞台几何进行相应的定义。阶段概念背后的动机是在其他系统几何中使用有效的跟踪,而不需要重新计算元素的位置和方向。通过阶段分割几何图形也可能有助于为特定几何图形分配不同的坐标系,并可使位置调整更加直接。
一个项目由"要素"构成。每个元素由一个表面、一个光学相互作用类型、一个光圈形状以及(如果合适的话)一组光学特性组成。阶段的位置和方向在全局坐标系中定义,而元素的位置和方向在定义它们的特定阶段的坐标系中指定。舞台可以是光学的,也可以是虚拟的。光学阶段被定义为一个物理上与光线相互作用的阶段。相反,虚拟舞台被定义为一个不与光线进行物理交互的舞台。该虚拟工作台可用于确定光线位置和方向,以及沿光路不同位置的入射功率或通量,而不会对与光线相互作用的光线元素产生物理影响,从而可能改变其轨迹。这些元素具有与它们相关的光学性质和相互作用类型。除此之外,光学和虚拟阶段在定义和使用方式上是相同的。工作台可以作为一组元素被复制和移动,并保存或在其他系统几何中使用。目前还不可能在单级内混合虚拟和光学元件。
Sol Trace采用3个右手坐标系:全局坐标系、工作台坐标系和单元坐标系。如图4a所示。工作台中的每个元素都有一个相对于工作台坐标系定义的局部坐标系(即位置和朝向)。每个阶段都有一个相对于全局坐标系定义的坐标系。如后所述,太阳的方向是相对于全局坐标系定义的。目前,太阳方向以矢量形式输入,或者以指定纬度的日期、日期和日期格式输入。光存储,以便后期处理和输出。
以图4b中的NREL高通量太阳炉为例,展示了一个复杂、多级、多元件系统。注意全局(黑色),阶段(红色)和元素(蓝色)坐标系。在这个例子中,总共有三个阶段。注意全局坐标系位于第二阶段的中心。之所以选择这种安排,是因为系统的主集中器是第二级。第一级由一个平面矩形反射元件(定日镜)组成。在这种情况下,级坐标系是定日镜的旋转中心,元件坐标系与级坐标系略微偏移,以考虑镜面与驱动器的物理距离。此阶段的目标点设置为默认的太阳高度和方位角,为特定的纬度、年日和小时定义。第二级是主聚光器,由二十五个六边形反射元件组成,每个反射元件具有球面曲率。这个阶段直接位于全局坐标系的顶端。二十五个单独的单元坐标系之一显示在舞台坐标系的右上方。这二十五个元素中的每一个都被指出,以便中心反射光线在第三级中相交于同一点。第三个也是最后一个阶段是位于HFSF建筑的实验海湾中的样本阶段(一个矩形平面目标)。同样,元素坐标系与工作台坐标系占据相同的位置和方向,并指向初级集中器的中心。元素/阶段定义的细节将在后面介绍。单个元素坐标系显示在工作台坐标系的右上方。这二十五个元素中的每一个都被指出,以便中心反射光线在第三级中相交于同一点。第三阶段,也是最后阶段,位于初级聚光器背面中心的样品级(一个矩形平面目标)。元素/阶段定义的细节将在后面介绍。
三个欧拉角旋转。这些旋转如图5所示。
第一次旋转是关于y轴的角度a,第二次旋转是关于新x轴的角度p,最后一次旋转是关于新z轴的角度y。子坐标系原点从父坐标系平移后,这三次旋转完全指定了子坐标系在父坐标系内的方位。前两个旋转通过指定父坐标系中与子坐标系的z轴对齐的点自动确定。然后指定子坐标系关于z轴的最后一次旋转。前两次旋转是基于坐标定义的,最后一次由用户作为输入参数。除指向定义和z轴旋转外,所有坐标系旋转计算均在Sol Trace中进行。
- 基本使用
打开SolTrace应用程序时,主窗口打开一个空项目,如图6所示。
图6。在打开SolTrace并推入太阳形状输入时,将项目清空。Hote默认的太阳形状是一个药丸盒的标准vidth 4。65 nrad。
SolTrace项目文件包含一组完整的定义模型或分析的输入。这包括关于太阳形状和位置的信息,一组表面光学相互作用特性,以及系统中每个阶段的所有元素。数据存储在带有' * stinput扩展名的纯文本格式文件中。射线追踪的结果不存储在这个文件中,也没有外部定义的表面类型,如VSHOT数据所描述的表面类型(后面讨论)因此,* stinput文件通常非常小。
主窗口左下方的图标工具栏(见图7)允许用户在不同的数据输入和输出页面之间移动,如下图所示。在窗口的上方有文件、运行、光学、舞台和帮助选项。文件选项允许用户启动一个新的项目,打开现有的,打开安装时提供的示例文件,保存项目,设置和打开一个工作文件夹,以帮助项目组织。这个选项还显示了以前打开的项目,可以直接用左键点击打开。运行选项允许用户使用所有或一个处理器直接跳转到跟踪,或者用户可以直接移动到跟踪选项窗口。Optics允许用户添加或删除光学属性集。帮助提供了关于当前版本的信息以及对文档的访问。这些选项中的许多都包括了列在特定选项旁边的快捷键。一旦光学属性和系统阶段页面被填充,就可以通过点击页面左侧的“+”或“-”符号来扩展或收缩这些页面。
图7。SolTrace导航工具栏
前三页(太阳形状、光学特性、系统阶段)用于定义系统。用户定义的光学属性页面和阶段将在加载或编辑文件后以子项的形式出现在导航树中。Trace Options页面会配置所需的光线数量、要使用的处理器数量以及其他模拟相关参数。在成功完成跟踪后,Intersections、Flux Maps和Ray Data页面将填充该数据。Scripting页面公开了高级脚本功能,允许用户以编程方式控制SolTrace来配置具有数百个元素的复杂系统的几何结构(例如,一个电力塔的定日镜场),或对计算的交点进行后处理。提供了一些示例脚本,包括一个可以从以前版本(2009年以前)的SolTrace导入旧格式*geo文件。由于这些步骤中的每一个通常是按照所示的顺序执行的(至少在设置初始几何图形时),以下部分按此顺序呈现。
SolTrace不知道用户所使用的度量单位。然而,始终应该清楚地使用一组一致的单位。此外,在跟踪例程中,功率值应用于每条射线,并用于后续的表面通量和功率计算。由于与功率相关的默认值是用户可选择的直接正常辐照度(默认值是1000,假设单位是W/m2),因此强烈建议用户在交叉和通量映射窗口中设置辐照度的单位。
- 定义太阳
两个特征完全定义了“太阳”作为光源:光在太阳圆盘上的角强度分布(称为太阳形状)和太阳的位置。图8所示窗口左上方的区域是定义太阳形状的第一步。这第一步就是确定太阳的方向。一种方法是在全局坐标系中定义一个点,这样从这个点到全局坐标系原点的一个向量就定义了太阳的方向。在这种情况下,用户必须将这个点放在初始阶段的元素之上,并且坐标系统与地球之间的关系不受约束。另一种选择是定义一个特定的地点纬度和时间(年日和当地太阳时)。根据这些信息,假设全球坐标系的z轴指向正北,y轴指向天顶,x轴指向正西,就可以确定太阳的方向。在定义舞台和元素几何时,记住这一点至关重要。SolTrace计算太阳在方位角和仰角上的位置,并根据下面的方程确定相应的单位向量。在元素几何取决于太阳位置的情况下(例如,对于塔几何中的定日器),用户必须使用这些相同的方程(Duffie,2006)来确定元素瞄准点。请注意,这些方程是基于太阳时的,来自地球和太阳的球形几何关系,不考虑经度、地球轨道的偏心或由于大气效应造成的影响。
下一步是确定太阳的形状。有三种选择。前两个是常用的概率分布。尽管太阳的形状随地球位置、天空条件和时间的变化而有很大的变化,但它在本质上既不是真正的高斯也不是丸盒,尽管丸盒近似足以解决大量的问题。对于高度精确的系统,不建议使用高斯太阳,除非该系统包含相对较大的光学误差(或基于几何或光学特性定义)。定义日冕高斯分布的参数是标准偏差σ。作为一个平坦分布,药盒的参数就是半角宽度。
第三个选项允许用户将太阳形状轮廓定义为一系列强度大通点。因为太阳的形状是轴对称的,所以只需要一半的轮廓(从太阳的中心到边缘)。这可以手动输入到窗口左下角的表格中。当用户选择“用户定义”选项时,此表可用。在右边的框中输入半轮廓中的大屯点数。剖面以一组datun点的形式输入:相对于太阳中心的角位置(以毫拉为单位)(从0开始)和该位置对应的相对强度。强度值可以是任何单位,因为代码将分布扩展到统一的峰值。一旦输入到表中,概要文件就可以存储在一个文件中供将来使用,并在以后使用Import和Export按钮检索。当数据输入到形状表中时,太阳形状图会自动更新。
图8。确定太阳的形状和位置。用用户定义的太阳剪短,单线变暗。
在某些情况下,将太阳定义为点源是有用的(例如,检查理想光学元件的性能)。可以在此窗口左上角的复选框中指定点源。当使用带有点源的全局坐标时,元素之间的距离非常重要,例如,设置无穷远处的点源需要指定非常大的距离。对于点源,纬度、日和小时选项不可用。作为对用户的帮助,安装包中包含了许多太阳形状文件以及示例几何图形。这些文件是基于(Neumann et al., 2002)所做的出色工作。这项工作将三个不同地点的太阳形状与直接法向辐照度(DNI)随时间的分布进行了比较,并与圆形太阳辐照度的实测值进行了比较。太阳的直接辐射和太阳的圆形辐射之间有明显的相关性,但这并不是没有一些不确定性,特别是在低水平的直接辐射。因此,用户必须意识到在Soltrace分析中使用各种太阳形状和直接值的含义。例如,非常罕见的是有一个高直接与高圆周太阳。提供的文件表示在不同圆周太阳水平的太阳形状。文件名的格式为:CSRx。式中,x为非圆太阳面百分数,即CSRO。太阳是一个非常晴朗的日子。太阳形状的选择高度依赖于几何形状,特别是在系统中的浓度水平。高浓度系统的接收角较低,因此看到的圆形太阳较少。太阳能分布对高浓度系统的影响要大得多。事实上,对于许多高浓度系统,选择一个药盒太阳是远远足够的。用户定义的太阳形状和Pillbox太阳形状的运行时间测试显示基本上没有区别。对于低浓度的系统,由于系统有一个高的接受角和大部分环太阳会找到它的方式到目标或孔径,影响是小得多。为了帮助用户选择合适的CSR文件,下面的表已从注意的来源中摘录。很明显,CSR与DNI水平有很强的相关性,但数据中存在相当大的分散。因此,用户了解时间、CSR和DNI之间的关系,以便产生合理的建模结果是非常重要的。例如,选择DNI值为1000W/m2的CSR30太阳形状是不合适的,因为在获得的数据中从未出现过这种组合。
对于用户定义的太阳形状,在数据输入窗口的右边有一些有用的按钮。预定义会根据上面描述的数据显示一个可用的太阳形状文件列表。复制选择整个太阳形状表并将其放在系统剪贴板中。Paste获取剪贴板数据(比如从Excel电子表格中开发的太阳形状)并将其复制到数据输入窗口。导入允许用户从任何选择的文件夹中选择一个文件;导出将输入的数据发送到用户选择的文件和文件夹中。如果预定义文件已被选中,则该文件将显示在数据的下方(如图8所示)。
- 光学性质
光学属性定义在第二个输入页面上,如下图9所示。每个SolTrace项目可能定义了许多光学属性集。使用“光学”下的“添加”和“删除”按钮来添加新的光学属性集,或者简单地单击“光学属性”图标来弹出添加对话框。属性的名称可以在添加对话框中添加,也可以在设置名称输入框中更改。每个光学属性集都包含一组用于表面正面和背面的单独参数,可从编辑下的选择选项访问。元素表面有一个由z轴向量定义的正面和背面。曲面选择和坐标系定义将在下一节的几何中讨论。曲面的正面朝向正z轴,背面远离正z轴。对于大多数表面的正面和背面是相对直接的,但有些,如圆柱体,可以混淆。光学属性可以通过导出保存,然后通过导入按钮在其他项目中使用。默认文件扩展名为*。. opt,但不要将其与SolTrace上一个版本的光学文件混淆,因为如果是旧版本*. opt则不会导入该属性的名称。选择“Opt”文件。通过在元素数据几何中输入的选择,元素可以是反射的,也可以是折射的(下一节还将讨论)。有许多参数在SolTrace中没有使用,可以忽略:光学表面#,孔径停止,衍射顺序和光栅系数。这些条目无法访问,但仍保留在未来的版本中。
图9。高通量太阳炉的定日镜光学属性设置输入页面
对于折光光学,此时只有透射率和折光指数的真实分量是相关的。不使用假想的折射率。一个真正的物理折射分量实际上是由两个元素或表面构造出来的。例如,在图10中,一块玻璃由两个被玻璃介质隔开的表面(或元素)组成。光线从一种介质(例如空气)穿过一个表面(或元素)到达玻璃介质,经过折射,然后穿过另一个表面回到空气中。第一个元素将定义为前面的空气折射率和后面的玻璃折射率。第二个表面将被定义为玻璃的前面的折射率和空气的后面的折射率。前后表面取决于元素地质构造的定义方式。非平面的表面会损坏镜片。透射率是射线(0到1)的分数。0)通过一个元素。因此,如果在上面的例子中,玻璃片的透射率为98%,那么其中一个元素的透射率应该定义为0。98和其他1.0或两者都可以定义为透射率为0。99(实际上两个透射率值的乘积应该等于所需的总体值)。这种选择是随意的。用户在定义元素时应注意跟踪元素瞄准点的方向,适当地将折射率分配到正确的一侧(前面和后面),并与中间材料的折射率一致。
图10。玻璃平面实际上是由几个独立的元素构成的。
在SolTrace的当前版本中,表面界面的反射和折射处理是使用著名的菲涅耳方程计算的。这是对以前版本的一个显著改进,并且允许对折射元素(和元素集)进行更健壮的处理。因此,像全内反射(TIR)这样的折射表面的特性现在得到了正确的管理。在任何给定的光线与折光面交点处,SolTrace首先确定侧面(正面或背面),并使用相关的光学特性在该交点处进行进一步的相互作用。首先,通过比较随机数与光学性质的透过率值来确定光线是否被吸收。如果这条射线被吸收了,SolTrace就会转移到下一条射线。如果光线没有被吸收,则计算平行偏振和垂直偏振的反射因子。这些都是基于理想的表面坡度加上与表面相关的任何坡度误差(无论是前面还是后面)。对这两个值取平均值以确定可能的反射分数。可能的透射分数是1-p。生成一个随机数(0-1)来确定光线是反射还是发射。如果计算的反射率小于这个随机数,光线就会被反射到镜面角度(图10中的9)。越大,透射的射线就越多。如果随机数小于此值,射线将以计算的角度(图10中的02)传输并传播到介质中。目前还没有使用基于材料性质和路径长度来确定吸收的更正确的方法,因此提醒用户要适当地利用光学性质(特别是根据光线是否进入折射介质来选择元素的反射或折射光学性质)。对于反射光学来说,由于不允许有透射,所以一个元件就足以建立镜面模型。相关的参数是反射率,元素仍然拥有背面和正面的值。例如,一个nirror可能有光线与背面相交(例如,一个场中的定日镜):背面的反射率应该被分配为零。SolTrace的一个新特性是反射率作为入射角的函数。注意反射率输入框右侧的复选框。如果选中,则在带有“…”的框中点击弹出对话框,该对话框允许用户输入反射率值作为nrad入射角的函数(90°= 1571nrad)。可以将此表复制到文本编辑器并保存,也可以将表复制到其他地方并粘贴到此对话框中。有许多材料的反射率在较高的入射角下发生变化。然而,对于一般使用的太阳能材料来说,获取测量数据是一个挑战。还要注意,任何反射率值都不适用于折射元素,因此被忽略。
图11。对话框推用户输入选项反射率作为入射角的函数。
对于折射光学和反射光学来说,还需要另外一组参数来确定表面的光学精度。除了元件表面形状对射线方向的影响外,还可包括两个影响元件表面射线相互作用的随机误差。它们是表面斜率误差和表面粗糙度。地表坡度误差是一种宏观特征,而镜面效应是一种微观结构效应。图12说明了反射面高斯误差分布的标准差为o的情况。总误差由
如果使用药盒分布,则将o替换为药盒的半宽度。在SolTrace中,doptican是根据反射向量定义的。根据斯涅尔定律,9的斜率误差导致20的反射向量误差。反射误差已经由反射向量表示,因此斜率项上的因子为4。在“属性值”窗口中间下方的框中选择分布类型,并为右边的错误输入适当的值。如图所示,SolTrace将斜率误差应用于表面法线,并将反射光线应用于镜面。
图12。表面斜率和表面镜面误差的图解。
- 几何学
- 定义体系认证Geonetry
一旦太阳被定义,用户可以进行下一步定义系统的光学几何结构。系统几何图形定义在选定的System Stage页面上。
光测网定义输入页为高通量太阳炉测网提供初始状态
输入页面显示了已经输入的数据。这个表格现在可以用来设计要分析的光学问题的各个方面。舞台名允许在所选舞台前面插入一个新舞台。阶段也可以通过菜单栏阶段选项添加。可以使用全局坐标系中的定位信息,以及工作台坐标系中的光学元件表来删除工作台。
-
- 多阶段计算程序
在这个例子中定义了三个阶段,这实际上是图1b所示的NREL高通量太阳炉。前两个阶段属于光学类型(即包含与光相互作用的光学元件)。阶段1(定日镜)包括平面定日镜(设置为特定的时间、年份和纬度),它将阳光重定向到主集中器(阶段2,主反射镜阵列)。最后一个阶段(阶段3,目标)是一个虚拟阶段,仅由一个平面目标组成,用于在主集中器的焦点处产生的通量分布。光线最终从太阳被追踪到阶段1(定日镜),然后到阶段2(主镜阵列),最后到阶段3(目标)。SolTrace中的顺序计算过程不允许离开一个阶段的射线再次进入该阶段。光线将在一个阶段内继续被追踪,直到它们被吸收或不再与任何元素发生进一步的相交。Theruser mus精心设计了识别这一顺序过程的光学系统。在继续讨论元素定义的细节之前,下面描述元素数据上面的三个部分。
-
- 阶段的属性
在“阶段属性”下的几个选项修改了光线的跟踪。首先是选择Virtual Stage,如果选中该选项,它将定义舞台及其元素,以便不与光线交互。然而,射线与元素的相交是确定的,这为确定通过元素的功率和通量提供了一种有用的方法。默认情况下,级是光级(Virtual未选中)。这使得光线可以根据孔径、形状和光学特性与元素相互作用。第二个选择是每射线多命中。如果选中(默认),SolTrace将在与元素的第一次交互后继续查找可能的交集。如果几何体已经被设置成可以进行多次反射,这个框应该被选中。如果未选中,则只确定最初的交互作用,在此之后射线将离开舞台。最后一个选择是Trace Through。这个选项允许夜间光线穿透一个阶段中的所有元素的情况(例如,光线通过一个环形孔进入随后的阶段,在那里它们夜间相互作用。如果未选中,代码将认为任何不相互作用的射线都“丢失”到系统中,不会被带到后续阶段。Trace Through不适用于初始阶段,因为要跟踪的光线集合是由与该阶段元素的相交决定的。因此,在初始阶段不相交的光线总是在系统中“丢失”。
-
- 全球性的坐标
三个输入中的第一组是阶段坐标系原点在全局坐标系中的位置(在x、y、z中)。每个阶段都必须在全局坐标系中定义这些参数。下面的四个数字的集合决定了阶段坐标系在全局坐标系中的方向。这个集合的前三个数字定义了全局坐标系中的一个特殊点。从舞台原点到这个Lpoint的一个向量定义了舞台坐标系的z轴。最后一个要定义的自由度是舞台坐标系绕z轴的旋转。这是以度数(Z旋转)为单位输入的第四个数字。这七个输入都可以通过旋转按钮(默认增加1)进行调整,也可以通过高亮显示和手动输入值。旋转按钮会弹出一个窗口,显示欧拉角和各个轴之间的关系(图14)。如果有已知的关系来指导最终的选择,则有一个z旋转自旋按钮,可进行增量调整以微调值。
图14。旋转帮助工具可用于两者
剪贴板动作按钮允许用户在电子表格或文本编辑器和SolTrace之间或SolTrace内的各个阶段之间复制和粘贴原点和原点数据。所有六个数据条目都是从SolTrace复制的。六个条目中的一个子集可以从电子表格中复制,但必须始终包括左上角的单元格(x origin),因为任何粘贴操作都是从这里开始的。这与下面在“元素定义”中描述的剪切和粘贴操作的工作方式非常不同。
-
- 元素编辑
有八个按钮允许编辑元素信息。右边的四个集合将在下面的小节中描述详细的元素数据。左边的四个用于设置和修改元素的数量。在创建舞台时,列表中没有元素,因此必须添加它们。Insert按钮要求插入的位置和元素的数量。一个1,1的元素会在列表的顶部插入一个元素。条目10,20将从第10个条目开始插入20个新元素。追加按钮将输入的元素数量添加到列表的底部。无论是插入还是追加,所有的数据单元格都是空白的。Delete和Delete All很简单;使用Delete删除所选元素。
-
- 元素定义
- 位置和瞄准点
- 元素定义
每个元素都定义在表的一行上,并通过其行号和其存在的阶段进行标识。用户可能想要“打开”或“关闭”某个阶段中的某些元素,同时进行不同的跟踪以进行比较。“En”。[启用复选框可用于启用和禁用元素。]如果选中(默认值),元素将被包含在几何体中,如果未选中,元素将被忽略。右键单击表格中的任何单元格,有许多选项,包括向下填充,复制选择和粘贴。选择垂直单元格时,向下填充将顶部单元格的值粘贴到下面所有选中的单元格中。复制和粘贴是直接的,可以用于复制和粘贴元素在同一阶段,不同阶段,或到一个外部程序,如Excel。当复制并粘贴多个单元格时,用户需要非常小心。接下来的三列是阶段坐标系内元素坐标系原点的x、y、z坐标。接下来的三列定义了目标点的Ix, y, z坐标。从元素原点到这个目标点的向量定义了元素坐标系的z轴。第九列是元素坐标系绕其z轴的旋转程度。这个由七个数字组成的集合描述了舞台中元素的位置和方向,与上面描述的在全局坐标系中舞台的集合完全相似。在Elenent Editing设置中有一个按钮可以帮助设置z轴旋转。单击行中的任意单元格选择一个元素,然后单击上面的Z-Rotation按钮会弹出一个窗口,显示欧拉角以及与ain点向量和各种轴的关系。这在调整z轴旋转时是很有用的,外部确定的值还没有计算出来。在大多数情况下,z轴旋转为零。非零值在绕轴复制元素时非常有用。
光阑孔径列包含元素开口在垂直于元素z轴的平面上的投影形状的描述。一个圆形孔径的例子如图15所示。
图15。Schenatics推了一个圆孔。
有多种孔径形状可供选择。列条目是对光圈描述进行编码的文本字符串。不同孔径的编码格式见表2。代码可以作为文本字符串手动输入。代码以小写字母(表示孔径形状的类型)开始,后面跟着一个连字符,然后是由逗号分隔的8个数字组成的列表。一些孔径形状需要所有八个参数,而另一些可能只需要一个参数。未使用的形状参数可以设置为O并被忽略。该程序防止用户输入错误的字符串代码。注意,对于所有孔径类型,z坐标将通过孔径在选定的表面轮廓上的投影计算。右击光圈单元格会出现与位置和视点相同的选项,但也包括到编辑光圈窗口的直接链接。高亮一个单元格并选择Element Edi中的光圈按钮会弹出相同的窗口。
单击时,会弹出一个对话框,帮助用户为当前选中的元素设置光圈,如下面的图16所示。这个子窗口顶部的下拉列表包含所有可用光圈选项的列表。选择一个会显示光圈的图形描述和输入框,用于输入该光圈的相关参数。点击“确定”,自动在光圈类型栏中输入所选光圈的正确字符串代码。
图16。孔径定义厂商以支撑一个六边形为例。
-
-
- 表面
-
每个元素的表面由表的surface列中的文本代码定义,与孔径的定义方式相似。有多种表面选择。表3列出了表面选项和相应的文本代码,并在需要的地方提供了更详细的描述。与光圈一样,右键单击会弹出跳转到编辑界面窗口的选项。注意,由外部文件描述的表面类型(Zernike、VSHoT、多项式、三次样条)的文件扩展名类型列在Code列中。这些文件不一定要具有那些特定的扩展名,因为插入的文本代码会告诉SolTrace所期望的文件格式。但是,为了组织的目的维护这些扩展是有帮助的。
在光圈类型描述的情况下,除了手动输入表面代码外,另一种方法是点击工作簿上方“定义”部分的“表面”按钮。当光标移动到表面类型列时,此按钮将变为可用。这样做会弹出图16所示的小子窗口。表面类型可以通过窗口顶部的下拉框进行选择。当选择不同的类型时,将在窗口右侧显示完整的图形描述和相应的输入参数框。输入正确的参数并单击“OK”按钮,结果显示为列条目的正确代码。注意,与孔径列一样,生成了额外的条目(共8个)。只使用指定的参数,renaining是由SolTrace插入的伪值(零),即使用户只输入使用的参数。
图16。表面定义vindor
-
-
- 详细的Surface文件格式
-
“泽尼克系列”表面类型用k t来描述2(X,Y) = ΣΣBι, xiγt-i,其中k =多项式的阶=0 0=RZernike系列文件格式为(N为阶数,B为系数):
N
Bo.o
B1.0
B1.1
B2.o
B2.1
B2,2
B N.N
泽尼克级数共有(N+1) (N+2) /2系数。
VSHOT数据集可由VSHOT软件在面板测试后生成,该文件通常由NREL提供。ost SolTrace用户不需要创建这样一个独立于VSHOT测试的文件,但是文件格式如下所示。值'o'是不被SolTrace使用的dunny变量,但必须包含在文件中。Dz /dx和Dz /dy是以弧度为单位的斜率值,而不是斜率误差。射线交点的位置由泽尼克方程决定。然后从表中插值出该点的斜率(和法向量)。任何给定行的格式都是自由的,也就是说,写入数据时可以不考虑列位置、小数点位置或有效位数的多少。
多项式级数选项由方程描述
用这种方法描述的曲面通常是旋转对称的,但是当使用单轴曲率截面时,曲率只是x方向的函数。多项式级数文件格式为(其中N为阶数,C为系数):
用数据点集(pi, Z)的三次样条插值法描述的曲面通常是旋转共向的,但当用于单轴曲率截面时,曲率仅是x方向的函数。所需的数据是数据点本身和第一个点和最后一个点的导数(或斜率)(边界条件)。三次样条插值文件格式为(N为数据点数):
双曲面和半椭球体由下式描述:
如果k<o,曲面是双曲线k=0,曲面是一个抛物线(SolTrace不允许,如果输入则捕获在trace上)
O<k(1,曲面是一个绕主轴旋转的半椭球体
k=1,该曲面是一个半球(SolTrace不允许,如果输入则捕获在trace上)k>1,该曲面是一个绕小轴旋转的半椭球
如果将光线追踪到一个封闭的表面,如圆柱体,建议在圆柱体的末端(或入口)放置一个“虚拟”窗口。这可以用一个折射率类型的平面圆元件来完成,其中该元件正面和背面的折射率都是= 1(即。零折射),透射率= 1.0(即完美传输)和光学误差设置为非常小的值(如<0。001 mrad)。这个表面不与射线发生物理上的相互作用(即不影响射线的路径),但修正了与射线原点远离圆柱体入口有关的数值问题。它还提供了一个方便的表面,以通量在进口和出口比较。
-
-
- 光学性质
-
每个元素都有一组不同的光学参数,这些参数定义了光线如何与表面相互作用。在“交互”栏中,用户可以选择折射和反射。光学性质由纳米参考。SolTrace项目可能有许多光学属性集,每个属性集都有一个唯一的名称。一旦定义了适当的属性集,元素表上的“Optics”列就可以用该元素的光学属性的名称来填充。单击表上方的“Opticsi..”按钮将弹出一个小对话框,列出系统中定义的所有光学属性集,选择一个并单击“确定”,名称将被输入到相应的表单元格中。对于虚拟阶段,交互类型和光学属性被忽略,不需要初始化。
-
-
- 评论
-
用户可以输入描述元素的注释。这些注释与阶段和元素号一起显示在交集和通量地图窗口中,以提供对这些窗口中显示的数据更友好的解释。
- 跟踪
跟踪Overvier
当用户指定要跟踪的一定数量的射线时(如何做到这一点将在后面描述),射线将继续随机生成,直到在阶段1的元素的某个地方出现相应数量的交叉。计算一个连接阶段1的原点和源(如太阳)的向量,射线位置在与该向量垂直的平面上生成,并在包含阶段1中所选元素的所有投影形状的矩形内生成。这缩小了随机射线生成区域并节省了执行时间。太阳方向和太阳形状的实际应用发生在这些交点确定之后,而不是像预期的那样在交点确定之前。从数学上讲,它们的应用没有什么区别,但从功能上来说,这样做更有效,可以消除不必要的射线产生和增加执行时间。一旦所需数量的射线与阶段1的某个地方相交,它们就会被追踪到后续的阶段。对于一些罕见的几何类型,用户记住这种方法非常重要。尽管“Trace Through”复选框出现在Stage 1工作表中,但由于跟踪逻辑,它是不相关的。图17显示了一个Trace Options窗口。
图17。跟踪设置参数
参数
第一个输入框是要跟踪的射线的数量。回想一下前面的讨论,这些射线实际上会与阶段1的元素相互作用。代码继续生成射线,直到所需的射线数量落在第1阶段的元素上。该代码计算矩形内产生的光线总数,包括落在元素上的光线和没有落在元素上的光线,将这个数字除以矩形的面积,并将结果除以直接正常日晒值(Direct Normal Insolation)为零(在可视化部分中描述)。这将产生一个单位功率/射线值,随后用于计算功率和通量值。生成的射线的最大数量允许用户限制生成的射线的最大数量,而不管实际达到了阶段1的射线有多少。由于难以置信的几何定义,这将禁止跟踪永远自旋。为了避免在正常操作中达到这个限制,用户有责任确保数量足够大。默认值是所选射线数量的1000倍。对于具有多处理器的计算机,SolTrace自动分派线程并发地跟踪射线。默认情况下,它会根据计算机中处理器的数量分派线程。但是,用户可以在使用的最大cpu数量框中限制这一点。随机数生成器的种子值是内部计算的,它基于使用当前CPU时钟时间作为驱动的伪随机数计算。如果选择默认值-1,则会自动执行此操作。可以输入其他值,并将为启动的每个新跟踪生成相同的随机数集。选择一个特定的种子在重新生成一组射线来评估特定射线路径的变化时可能是有用的,因为某些几何变化已经被实现了。跟踪完成后,种子将显示在trace部分中。
光学错误
在大多数情况下,用户希望使用元素属性中所选择的太阳形状和光学误差。然而,在某些情况下,在光学误差部分取消选择这些是有帮助的。看到太阳形状和/或光学误差对几何内部的功率和通量分布的直接影响通常是有指导意义的。与在前面描述的窗口中更改单个值相比,使用这些复选框要简单得多。
工作目录
SolTrace用于读写文件的文件夹也可以在此窗口中指定。
跟踪
当点击“Start new trace”按钮时,会出现一个进度对话框,提供关于射线跟踪过程当前状态的统计信息。在拥有多个处理器的计算机上,每个处理器的进度会分别显示,以及关于每秒被跟踪的射线数量和总运行时间的汇总统计信息。跟踪完成后,结果会自动加载到结果和数据导出模块中。只需单击适当的工具栏按钮即可查看图表或将数据导出到CSV文件或剪贴板。
错误消息
SolTrace在跟踪之前不检查不一致的几何输入。如果存在这样的不一致,在许多情况下,代码将识别输入错误的类型,停止跟踪并生成一个带有错误描述的弹出窗口。然后由用户返回几何图形来纠正问题。识别和捕获更多错误是未来代码改进的目标。如果达到了射线的最大数量,则会显示一条错误消息。此时,用户可以简单地增加最大值。当第1阶段元素相对于它们的孔径边界间距较大时,这种情况就会发生。
- 可视化
结果
此时,SolTrace Results中基本上有两种不同的绘图类型:3-D射线相交路径图和2-D通量分布图。
十字路口
图18是一个散点图的例子,显示了由抛物线镜和抛物线焦点处的圆柱形吸收管组成的单阶段1的射线相交。在图窗口的左侧,用户会注意到两个框,一个名为“stage”,另一个名为“Elenents”。在“阶段”框中是系统中阶段的列表。最初Elenent的盒子是空的。点击(或选择)阶段列表中的一个或多个阶段,在“元素”框中会显示每个所选阶段的元素列表,旁边是复选框。复选框右侧显示的数值是SolTrace中使用的阶段和元素编号。如果元素不包含注释,则指示表面类型(参见表3的字母代码名称)。如果有注释,那么该文本将显示出来。每个元素后面括号中显示的值是每个阶段中每个元素的交点数量。注意,一条射线可以与一个或多个曲面没有交集。在“Stage”列表的顶部有两个按钮,它们的用途很简单。一个点击选择所有阶段,另一个点击取消选择所有阶段;元素列表有一组相似的按钮。用户可以通过勾选感兴趣的元素旁边的方框,为要绘制的特定阶段或元素选择射线交点。
一旦选中了感兴趣的元素,用户现在可以选择如何显示射线交点。舞台列表的正上方是一个框,用于选择要用于情节的坐标系。如果选择了空阶段的元素,那么显然全局坐标系将是合乎逻辑的选择。但是,如果选择了一个阶段中的一组元素,用户可能希望在该阶段的坐标系中绘制射线交点。如果只选择了一个元素,则同样适用,用户可能希望在该元素的坐标系统中绘制结果。右边的“仅最终相交”复选框允许用户显示特定阶段内的所有射线相交,包括多次反弹或仅吸收的或最终的射线相交(射线退出阶段之前的相交)。如果反射元件的反射率<1,如果折射元件的透射率(1),这将影响计算功率(如下所述)。如果不勾选“仅限最终相交”框,则功率结果可解释为入射功率,而勾选则为吸收的功率。
有三个选项可供用户在“着色”中显示射线相交。第一种是将它们全部显示为一个系列或颜色。另一种方法是将每个单独阶段的射线交点绘制为单独的系列或颜色。最后一种选择是将每个元素的射线交点绘制成独立的系列或颜色,而不考虑阶段。单个射线的射线路径也可以显示为连接射线交点的线(用于通过复杂的多个反弹几何图形跟踪射线路径)。每条射线都有一个与之相关的数字,从1到请求射线的数量。可以绘制特定的射线数或射线数的范围(如1、2、5、6-10')。单击(Ray Numbers:'使文本框可用来输入感兴趣的射线号。除了错过最后拦截阶段的射线外,射线路径用黄色表示。最终错过下一个阶段的射线路径的最后一段用红色表示,它是一个沿着路径走向错过阶段的短向量。用户也可以选择DNI,默认值为1000W/m2。在使用不一致的单元集时,要注意功率计算。
图18。单个抛物线槽推所选射线路径的交点图。
一旦绘图完成,一些统计信息将显示在输入部分下面的文本框中。这包括从太阳追踪到的射线的总数和Stage 1元素周围的边界区域,用户选择的DNI,与每条射线相关的功率,为所选元素绘制的射线的数量,绘制的射线的功率,最后绘制的射线的质心。对于平面元素最有用的质心也是如此。如果选择了多个元素,则计算所有元素的功率和质心值。在某些情况下,这可能有用,但在其他情况下,此信息只适用于单个元素,则不适用。通过将光标放置在绘图区域内,按住左键然后移动鼠标,可以围绕不同的轴旋转交叉绘图。额外的旋转可以用“Ctrl”+左键点击完成。可以通过鼠标滚轮放大。
通量地图
Flux Map选项通过选项卡显示等高线图(图19)或曲面图(图20)。曲面图和等高线图都是为通量在平面上的分布而设计的,因此要求数据为单元坐标系中一个平面或圆柱面的单元。圆柱形元件被“压平”用于绘图。如果1)选择了多个元素,或者2)元素表面不是平的或圆柱形的,程序将不允许曲面或等高线图。如图19所示,可以输入x和y方向上的箱子数量,默认值为20.该程序计算两个方向上的最小和最大范围,并默认使用这些来绘图,但是用户可以通过取消勾选“自动选择视图”框来输入所需的其他最小和最大范围。“仅限最终交叉”框具有与上述相同的操作。在绘图按钮下方,显示了通量分布的一些统计信息。峰值通量、最小通量和平均通量以及计算中的不确定性都被显示出来。这个不确定度为1/Sn,其中n是与所指示的测量相关联的命中次数。例如,由于峰值通量与单个垃圾箱相关,因此命中次数较少,因此不确定性较高。均匀性计算为通量值的标准差除以平均值。功率和质心也显示为十字路口。
图19所示。抛物线槽示例的等高线图,推通量在接收管上(无环形)。
图20。表面图推三维通量分布的目标上的高通量太阳能炉的例子。
曲面图可以像交集中那样旋转和缩放。
- 导出数据
导出数据
跟踪完成后,原始交点数据可以在“射线数据”页面上查看和导出。
图21。高通量太阳炉的三射线相交数据实例。
通过在该窗口的View Options部分进行适当的选择,可以将射线交点和方向余弦的表格数据加载到表中。图21中显示了一个示例。详细的数据可以通过其他软件进行审查和导出,以供进一步分析。这里看到的fornat是将数据保存到文本文件的确切方法。默认情况下,所有阶段的结果都列在阶段坐标系中。用户可以通过表上方View选项中的选择选择要显示的坐标系统和特定的舞台。图21所示的表是一个特定阶段内每条射线的交点表。每个条目包含:1)舞台中射线交点的x、y、z位置,在用户选择的任何坐标系中投射,2)射线在交点处的入射方向余弦,3)射线击中的舞台内的元素编号,4)相关的舞台编号,5)射线编号。如果一条特定的射线在一个阶段中有多个交叉点,那么该射线号将有多个条目,显示它通过特定阶段之前的路径。如果一条射线完全分解了舞台上的所有元素,那么元素编号列中就会有一个零表示这种情况的发生,但只有在全局或舞台坐标系被选中的情况下才会如此。如果选择了元素坐标系,则会生成一个错误代码并插入“convert . err.”。E "进入细胞。此错误目前没有被捕获或以其他方式处理。如果元素数对于特定的射线交点是负的,这意味着射线实际上击中了这个元素,但被吸收了。同样,这条射线在系统的其余部分不再被跟踪,因此不会出现在后续的阶段数据列表中。如果该阶段的Trace Through被关闭,那么该射线编号将不再显示在以下任何阶段数据列表中,因为它被认为是丢失的射线。在此窗口的Export data部分中,有两种导出数据的选项。可以通过适当的按钮将数据复制到剪贴板,也可以将其保存为CSV文件。例如,复制的数据可以直接粘贴到Excel电子表格中。