【DDSCAT——離散偶極近似仿真程序11】DDSCAT目標方向的調整

       這一部分我們研究一下對DDSCAT目標模型在座標系中的角度調整問題。     

       先來看一波手冊原文:

       Every target is defined by a list of “occupied” lattice sites (i; j; k)n, n = 1; :::; N. In the “Target Frame” (TF), these sites have physical locations (x; y; z)n = [(i; j; k)n + (x0; y0; z0)] × d, where d is the lattice constant (in physical units) and (x0; y0; z0) is a vector that gives the physical location corresponding to (i; j; k) = (0; 0; 0).

       這個TF,目標架構,我理解的就是通過我們shape.dat或target.out文件中設定的每個偶極子點的座標來表示目標整體位置的座標系。

       TF也就是以目標自身爲主的座標系。

------------------------------------------------------------------------------------------------------------------------

       Recall that we define a “Lab Frame” (LF) in which the incident radiation propagates in the +x direction. For purposes of discussion we will always let unit vectors x^LF, y^LF, z^LF = x^LF × y^LF be the three coordinate axes of the LF.

       DDSCAT又定義了一個Lab架構,其中,入射光需沿x軸正方向傳播。而x^LF, y^LF, z^LF = x^LF × y^LF分別爲這個座標系的三個座標軸。這個LF,我們就理解爲常見的笛卡爾座標系,而特殊的地方就是,LF規定了入射光必須沿+x方向傳播。

       LF也就是以入射光爲主的座標系。

--------------------------------------------------------------------------------------------------------------------------

       Recall that definition of a target involves specifying two unit vectors, a^1 and a^2, which are imagined to be “frozen” into the target. We require a^2 to be orthogonal to a^1. Therefore we may define a “Target Frame" (TF) defined by the three unit vectors a^1, a^2, and a^3 = a^1 × a^2 .

       a^1 和 a^2 是凍結(固定)在目標中的兩個正交向量,這兩個向量是用來表示目標方向的。如果再需要一個a^3,則a^3 = a^1 × a^2。

-----------------------------------------------------------------------------------------------------------------------------       

       Orientation of the target relative to the incident radiation can in principle be determined two ways:

       1. specifying the direction of a^1 and a^2 in the LF, or
       2. specifying the directions of x^LF (incidence direction) and y^LF in the TF.

       相對於入射光方向,目標的方向原則上可以被一下兩種方式確定:

       1. 指定LF中 a^1 和 a^2 的方向(也就LF靜止,目標是動態的);

       2. 指定TF中 x^LF(入射方向)和 y^LF 的方向(也就是目標靜止,入射光是動態的)。

--------------------------------------------------------------------------------------------------------------------------------

       DDSCAT uses method 1.: the angles Θ, Φ, and β are specified in the file ddscat.par. The target is oriented such that the polar angles Θ and Φ specify the direction of a^1 relative to the incident direction x^LF, where the x^LF,y^LF plane has Φ = 0. Once the direction of a^1 is specified, the angle β then specifies how the target is to rotated around the axis a^1 to fully specify its orientation. 

       DDSCAT選擇使用方法1的話,需要在ddscat.par中設定Θ, Φ, 和 β這三個角度來確定目標的方向。Θ和Φ指定了 a^1 相對於入射方向 x^LF 的方向,如果Φ = 0,則 a^1 會在 x^LF,y^LF 平面內。固定了 a^1 的方向之後,β角制定了目標繞 a^1 軸如何旋轉,從而可以完整的確定目標的方向。

       這裏我們多理解一下,看圖可知,Θ 規定了a^1 和 x^LF 之間的角度,Φ 規定了 a^1 和 x^LF,y^LF 平面之間的角度,這樣一來,以LF原點爲起點的 a^1 向量的方向就被確定了。同時,也可以理解,Φ = 0 則表示 a^1 會在 x^LF,y^LF 平面內了。而 a^2 是與 a^1 相正交的另一個向量,且起點爲 a^1 的重點,而 β 表示了 a^2 與 a^1, x^LF 平面之間的夾角,由此固定了 a^2 的方向。

       接下來,我們就可以通過改變Θ, Φ, 和 β這三個角度來調整目標的方向了。

       方法很簡單,需要在ddscat.par裏面設置下面這部分數值。

       其中,每行的三個數分別表示改角度的首個值、末了值和角度的數量。

       要注意的是,如果數量不是單個,則這裏的角度分配方式,不是和前面的Vacuum wavelengths和Effective Radii的平均增長方式完全一樣。我們需要先看下原文:

       Note that when DDSCAT 7.3 chooses angles it handles β and Φ differently from Θ. The range for β is divided into NBETA intervals, and the midpoint of each interval is taken. Thus, if you take BETAMI=0, BETAMX=90, NBETA=2 you will get β = 22:5° and 67:5°. Similarly, if you take PHIMIN=0, PHIMAX=180, NPHI=2 you will get Φ = 45° and 135°.

       β的角度分配方式爲,先根據NBETA的值來將首尾值的區間進行劃分,然後在取每個區間的中值爲所有的 β 角度。

----------------------------------------------------------------------------------------------------------------------------

       根據手冊的意思,Φ的分配方式應該是和 β 相同的。

-----------------------------------------------------------------------------------------------------------------------------

       Sampling in Θ is done quite differently from sampling in β and Φ. First, as already mentioned above, DDSCAT 7.3 samples uniformly in cos Θ, not Θ. Secondly, the sampling depends on whether NTHETA is even or odd.

       • If NTHETA is odd, then the values of Θ selected include the extreme values THETMI and THETMX; thus, THETMI=0, THETMX=90, NTHETA=3 will give you Θ = 0°; 60°; 90°.
       • If NTHETA is even, then the range of cos Θ will be divided into NTHETA intervals, and the midpoint of each interval will be taken; thus, THETMI=0, THETMX=90, NTHETA=2 will give you Θ = 41:41° and 75:52° [cos Θ = 0:25 and 0:75].

       而Θ的分配方式最與衆不同,首先,Θ是以cos Θ的方式平均的,即根據cos Θ對應的小數值分配。具體的分配方式還有奇偶之分。

       • 如果NTHETA是奇數,則最終分配出的角度是包括預先設定的首尾值的,例如,若設定THETMI=0, THETMX=90, NTHETA=3,則能得到 Θ = 0; 60°; 90°。因爲,0°和90°是首尾值,而NTHETA是奇數,則這兩個角度必得到,而cos 60 = 0.5,則60°是第三個值。

       • 如果NTHETA是偶數,則將cos Θ 的範圍分爲NTHETA個區間,然後取每個區間的中值,得出所有的 Θ 值。例如,若THETMI=0, THETMX=90, NTHETA=2,則可以得到Θ = 41:41° and 75:52° (因爲,cos Θ = 0:25 和 0:75)。

 

       以下的內容還在更新中。。。

一、調整THETA角

       1)THETA = 0, 22.5, 45, 67.5, 90 degree     PHI = 0, BETA = 0

       說好的改變了THETA角,目標應該繞着z軸旋轉纔對,怎麼呈現出來的電場圖沒有轉呢。

       別急,我們仔細觀察電場圖,發現場強較強的紅色黃色部分一開始是分佈在模型上下兩側的。而後來,隨着THETA角度的改變,場強強度分佈有點變化,下強上弱。而到最後一張圖的時候(THETA = 90 degree),發現,原本上下對稱的場強,現在變得左右對稱了。這時候,就驗證了我們一開始的猜想:

       DDSCAT計算出的場強模型,目標方向沒有改變,而是入射光方向和極化方向相對改變了(極化方向也是兩個正交的方向,其中,e^01與y軸平行,e^02與z軸平行;對於極化方向方面的概念,我目前也不是很清楚,以後看懂了再跟大家分享)。因此,如果我們想要看到轉動的目標和固定的LF座標系,就需要我們自己手動轉動電場模型。

       2) 調整角度之後(藍色邊框箭頭表示模型旋轉方向,此例中表示目標繞z軸逆時針旋轉)

       按照我們設定的THETA角度之後,手動在Vislt(本篇所有的可視化我都用了三維切面呈現)中轉動模型之後,我們可以看到,此時的電場強度基本是以x、z平面上下對稱的。這也就表明了,我畫的這個座標系是實際上的LF座標系,且此時的入射光是沿我畫出的x軸傳播的(在這裏,我們忽略Vislt圖中左下角那個座標系,不要管這個座標方向)。

二、調整PHI角

       1)PHI = 0, 22.5, 45, 67.5, 90 degree  THETA = 0, BETA = 0

       2) 調整角度之後看

三、調整BETA角

       1)BETA = 0, 22.5, 45, 67.5, 90 degree  THETA = 0, PHI = 0

       2) 調整角度之後看

       沒錯,和調整PHI角時的結果一模一樣。這不奇怪,因爲,當THETA = 0 時,調整PHI和BETA的結果都是繞着x軸旋轉。

       因此,如果要顯現PHI和BETA的區別,需要給THETA設定一個不爲零的值。如下面四和五中的例子:

四、BETA和PHI的比較

       1)THETA = 45 degree時,調整BETA角:BETA = 0, 22.5, 45, 67.5, 90 degree PHI = 0

       途中,藍色邊框箭頭表示的是,目標的轉動方向。可以看到上圖中目標是圍繞着我們看不見的a^1旋轉,而下圖中,是圍繞着x軸旋轉。

       2)THETA = 45 degree時,調整PHI角:PHI = 0, 22.5, 45, 67.5, 90 degree BETA = 0

 

五、其他

       對於角度的設定,比較麻煩,我們還需要考慮奇偶、首尾值、區間中值這些因素。而有一個簡單的辦法可以避開這些思考過程,就是我們每次選擇只計算一個角度的模型(如果你不是大量研究角度變化的話),即:

'**** Prescribe Target Rotations ****'
 0.   0.  1  = BETAMI, BETAMX, NBETA (beta=rotation around a1)
 22.5   22.5  1  = THETMI, THETMX, NTHETA (theta=angle between a1 and k)
 0.   0.  1  = PHIMIN, PHIMAX, NPHI (phi=rotation angle of a1 around k)

       像這樣設定就可以了,表示THETA轉動22.5°,而其他角度都是0。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章