第一行设定整个光线矩阵为零。第二行放入随机数噪声在数组中,仿真自发辐射所造成的噪声影响。
大部份的雷射都从自发辐射开始,所以此一设定更增加了真实性,而不是简单的平面波而已。当然,稳定态的解不会因为我们的初始条件而有所影响。
energy/norm 1 1 # normalize energy
此行调整光线的强度,不需要改变其外形,所以其总能量将会是归一化的。我们将会量测能量在每次传递后并减1,此一差异将表示出能量的损失。
pass = 0 # initialize variable
将pass这个变数设为0
reson/run 100
执行reson此一宏100次,有时候我们会需要执行超过100次或少于100次的执行得到稳定
的效能。
title Energy loss per pass
定义下式绘图所使用的标题
plot/watch plot1.plt # set plot name
此指令建立绘图文件名称。绘图数据将会储存在此一档案中。Watch程序会自动的显示绘图数据并自动更新数据,当新的绘图数据建立在同一个文件名称中。Watch将会针对不同的文件名称建立不同的绘图窗口。可以让我们同时观察到许多图形。
plot/udata min=-.05 max=.0
此行画出在宏中使用udata/set所收集的数据。最小及最大值的定义更有效的显示出损失。
title diffraction mode shape
此行定义下图的标题
set/density 32 # set plot grid to 32 x 32
set/window/abs -.05 .05 -.05 .05
第一行定义网格线密度为32x32。第二行定义绘图宽度为0.05 x 0.05 cm。此指令让绘图区域正好足够绘出主要的光线部份。
plot/watch plot2.plt # set plot name
此行定义新的绘图档案。Watch将会定义新的绘图窗口给新的档案。
plot/iso 1
此行定义等比例图显示共振图的模态在100次的传递后。因为我们开始于随机数噪声,经过100步
之后并未完全收敛,还有一些低阶的Hermite-gaussian模式存在。如果我们执行更多步计算,终究会得到期待的稳定高斯模态。
执行此一档案只要输入read/disk resonator.inp就可执行刚才输入的指令 |