关于一个脚本语句的问题


#1

脚本文件里面的语句:?cone/total*T 计算的应该就是2倍halfangle内能量占反射能量比对吗? 但是我用镜反射方向的反射率来验证出现了一些问题,我建了一个光滑的面如附件,然后0度入射光打入,然后做远场变换,按理说反射的话应该只有镜反射方向有能量啊,但是为什么其他方向也有能量,只有把halfangle设为90度,cone/total 才等于1?不应该是镜反射方向内的一个小角度内能量很集中,其他地方没能量吗?另外我想问问您要是想用附件的脚本程序计算镜反射率应该怎么修改halfangle,就是halfangle取多大比较合适?或者怎么修改脚本?谢谢您的帮忙,对我目前的工作很重要!verify.lsf (574 Bytes)


#2

Hi @14B902026,

你好。首先说透射和反射都是power不是能量。语句里 cone/total*T; 计算的是30度半角内的透射功率相对于光源总入射功率的比值。

在你的测试里,听起来你用的是PEC(perfect electrical conductor)镜面,高斯光源,然后在光源前面放一个monitor测试透射率并在远场计算反射场强。如果是这样的话,反射光的角度会取决于你使用的光源的发散角度(divergence angle)的设置。如果发散角度的设置小于30度,你应该可以得到cone/total=1。否则这个结果应该会小于1,因为光在大角度里也有传播。如果要把这些大角度也考虑到的话,你可以增加积分的半角。

关于光源的发散角,你可以参见网页FDE - Beam

希望这些可以帮到你 :slight_smile:


#3

谢谢您的回答。我计算的是平面波12.fsp (342.1 KB)就是这样一个简单的例子,为什么一个光源投射到远场以后会有一个光斑或者说是一个扩散,那么这样的话就会影响积分半角的选择。


#4

请问要是我想得到的是镜反射率应该怎么去做?因为不同的积分半角必然会影响透射功率相对于光源总入射光源的比值,那么单独的镜反射方向应该怎么去计算?


#5

你好。这个问题没太看明白,远场计算的都是1米以外的半球,你看到的光斑应该是在球坐标上的?那个同时显示了强度和偏振角度。根据上面的回答,你的积分半角的选择取决于你的光源的发散角度(divergence angle),在这个角度之内积分应该是会得到全部的功率的。


#6

周期结构不能用普通的farfield3dintegrate,因为这个函数是对非周期结构的。对周期结构,你需要用Grating函数,因为此时远场只有一个角度(对应一个衍射级)。如果你用farfield3dintegrate,并且恰好你抽样时没有抽到衍射级角度上,结果就很小。你用这个监视器的透射率看看,结果是正确的,100% 透射: