光催化效应仿真专题之三:device热学仿真

参见
光催化效应仿真专题之一:简介
光催化效应仿真专题之二:FDTD光学仿真
完整的仿真方法和例子可以在KB上找到

光学仿真完成后,可以使用DEVICE的HEAT solver 计算吸收功率所产生的温度分布和变化。主要步骤参考这个帖子
结构设置:
注意,建立结构有两种方法:一是按照光学仿真所介绍的步骤,二是用拷贝和粘贴的方法从光学仿真文件中直接将几何结构复制过来(但是不能反过来)。
我们这里用第二种方法:在FDTD里面用鼠标同时选中SiO2 、water 和structure group,按Ctrl-C即获得拷贝;然后打开一个空白DEVICE软件,将鼠标放在Model下面,按Ctrl-V即粘贴成功。

由于光学仿真材料和热学仿真材料特性不同,因此我们需要重新设置材料和材料特性。其中,水的热学参数需要用户自己查找,并添加一个新的材料;SiO2和金可以在DEVICE材料库中找到;在结构组里面将金材料赋值给mat。这两者材料所用的原始数据与光学材料来之不同的参考文献,这是可以的,没有必要一定要来自相同的手册,因为它们是完全不同的材料特性。

HEAT的设置
Structure-devices:
结构可以直接从FDTD文件拷贝过来。由于现在是热学仿真,因此需要给每个结构添加相应的材料特性:
Substrate material: “SiO2 (Glass) – Sze”
NP material: Set “mat” in the structure group to “Au (Gold) - CRC”.
为了更好地将球体划分网格,将结构组的Z定位在 0.099um。

材料库中没有水, 经过查找,我使用如下参数:
density 996 kg/m^3
specific heat 4178 J/kgK
thermal conductivity 0.6W/mK
与电学仿真一样,热学的仿真区必须位于指定的材料内(FDTD的背景材料是真空,可以修改)。我们可以添加Air来覆盖整个仿真区,但是将其“mesh order” 设为 4。 此数值越大优先级越低。
set is “alpha” in “Graphical rendering” to 0.2. In addition, the emissivity of “water” in Air in the “Radiation” is set to be 0.9.
Simulation region and settings:
在添加HEAT仿真区后,在 “solver geometry"选 3D。 x/y spans与光学仿真一样,因为是周期的。zmin 不同于光学仿真,选 -2um , zmax 选 0.5um。因为球直径只有0.2微米,可以取最小的棱体长度为0.01微米,最大的棱体长度为0.1微米。为了更好的描述球体,在网格高级设置那里,选deflection distance 0.5纳米(不选也可以)。
Source and monitor:
点击“Source” 并选 “Import heat”, 可以看到在HEAT 里有一个物件 “heat” 。 将其位置设置为(0,0,0),名字改为 “heatX”,然后将X偏振的吸收文件Q_heat_x.mat输入进来(需要点Load)。注意,在“select attribute”选“Pabs_thermal”以保证使用正确的Dataset (你可以查看FDTD仿真文件中的分析组脚本,此dataset的名字就是Pabs_thermal)。 由于光学仿真的结果只有0.026nW的太阳光吸收(绝对值,因为光学仿真的结果已经乘了一个太阳的功率),非常小。一般的文献都需要微瓦量级,因此“scale factor” 设置为 500。 点击 “ok”及完成输入。
同理完成另外一个偏振,并命名为"heatY”。总共相当于1000个太阳,用一般的聚光镜可以实现。
必要的话可以添加“Temperature”监视器在指定位置和设定大小。
Boundary conditions and interfaces:
在前面介绍中,我们添加了空气,是流体,因此在仿真区的上面(zmax)空气本身就是边界条件;二下面zmin 为什么设置为 -2um?因为下面一般是接近室温的,如果直接仿真,那这个尺寸太大,而且是均匀介质,没有必要仿真。我们可以添加边界条件:在"Boundary Conditions"选"thermal boundary",选“solver boundary” 为 -z, “Steady State” tab set “bc model” to be “single”, set “model” to be ‘fixed temperature” of 300K. 如果直接这样就仿真,纳米粒子吸收的功率在没有身高多少温度的情况下,就变成室温了,因为 2微米的地方就是室温,热传导使得整个系统的温度差不多。 实际的SiO2基底比较厚,例如1毫米,由于它是均匀的材料,我们可以计算其热阻抗:

L is the length of the solid in meter, A is the cross-section in m2, and k is the thermal conductivity in W/m-K
材料的 k=1.38 W/m-K, 因此 阻抗是9.5109 K/W。 经过反复计算,发现软件里面实际用的是"Thermal insulance" 即 RA(目前2017a版), 因此用0.72*10-3 m2K/W。勾选"thermal impedance",并填入此值。
前面说的空气是可以带走热量的,带走多少与它接触的材料特性有关。此时是水,点击 “Interface”,选Air,并将新添加的水加到Air相接触的材料,并“Convection" and “Radiation”。 点"Convection" 设置 h=10 W/m^2K,点 “Radiation” 设置emissivity 为 0.9, 此为水的辐射率。

至此,设置完成。

运行仿真,结束后,右键点 HEAT,选Visualize,选温度 thermal可以查看仿真区的温度分布:


或者选监视器查看

由于是稳态情况,在这个极小的体积内温度基本是一样的。
如果仔细看看有少许差别
https://kb.lumerical.com/en/photocatalysis_temp_zoom60.png

用脚本可以得到监视器的温度
aa=getresult(“HEAT::monitor”,“temperature”);
?T=max(aa.T);

讨论
水的沸点是373K,429K早就沸腾成蒸汽了,那么仿真结果有问题吗?
我们先看看0.26e-12 W的吸收功率在理想条件下可以使局部温度升高多少,根据热辐射原理


可以计算出这个微小功率可以向300K的环境温度辐射到1354K的高温;
我们再仿真一下底部绝热时能升温多少: 在边界条件那里,“model”, “bottom” BC选为“insulating”,此时只有上面的空气辐射和对流,结果为1335K。如此高的温度别说是水了,就是金属也溶化了(金的熔点1064 °C)。实际上很难做到完全的绝热,高温导致水变为蒸汽,有冷水注入等。

在你做出水已经汽化的结论前,请考虑:

  1. 材料热参数在纳米量级可能与大尺寸完全不同;
  2. 在周期方向仿真时相当于绝热,实验室不可能完全做到的;
  3. 仿真时没有考虑冷水的注入和流动(高温导致产生水蒸气);
  4. 当温度很高时,材料(包含空气)的热学特性将可能随温度而变(软件给出了部分材料的模型)。

仿真小贴士:
初始仿真请用较粗的网格;
由于结构的对称性,可以仅仿真其1/4的体积(但是由于有限元网格的变化结果可能有少许差别);
对于曲面结构,可以将网格选项中的“Advanced Options”, “deflection tolerance”设置为小于1纳米;
当有均匀的大尺寸材料介入时例如基底,可以用热阻抗代替以减小仿真区尺寸,提高仿真速度;
输入的热源必须很好地分辨,也就是要用细网格;
如果预计结果温度很高(例如绝热仿真), HEAT-Advanced 高级选项中将 "max update"从100K提高到例如500K。

光催化效应仿真专题之一:简介
光催化效应仿真专题之二:FDTD光学仿真
完整的仿真方法和例子可以在KB上找到
photocatalysis-nosource.ldev (6.1 MB)

因为文件太大,我将里面的热源数据删除了,用户需要自己输入:
Q_heat_x.mat (1.2 MB)
Q_heat_y.mat (1.2 MB)

关于流体:流体不参与网格划分,在仿真时将根据流体的参数来解析计算,例如,对于Convection,内部会用这个公式计算计算
Q热=面积*温度差*对流常数h
这里的温度差是指相邻的仿真区内物体温度与流体的温度之差。流涕的温度在Interface里面设置:

通过指定的两个或多个材料Interface来实现,例如选择Convection或(和)Radiation。

详细说明在这里
https://kb.lumerical.com/en/materials_material_interface.html

有什么建议请跟贴。

6 Likes

老师您好,我在做固体静态热仿真的时候,采用空气做边界条件。如果仅仅设置对流边界仿真没问题,一但加上热辐射边界就会出现不收敛的情况,请问这是什么原因?

你使用最新版测试一下。热辐射边界添加到了哪个边界?一般是在固体-流体边界,空气和热辐射均不参与仿真,都是按解析共识计算的
https://kb.lumerical.com/en/ref_sim_obj_boundary_conditions_thermal.html
不过早前的版本有这个问题,早已经解决了。

另外,由于你的问题不是此帖的内容,以后请发新帖。此帖近为收集建议或者此帖的问题。

谢谢孙老师,我是用空气作为背景材料进行热交换仿真。我再用新版本去试试。发帖的问题我以后会注意:)

1 Like

老师,我下载下来这个例子仿真时会报错,如图,想问下老师这是什么问题wrong

我这里测试没有问题,除了温度降低到425度之外(因为网格改变了):

我估计你的问题可能是文件在D盘。你把文件拷贝到桌面上看看,再有问题请另外发新贴。photocatalysis 2018a.ldev (7.8 MB)