Locked History Actions

hamamoto_code

浜本さんのコード

  • コードを理解/移植する場合のメモ
    • おそらく計算時間を短縮に重点が置かれているようだ。そのために、いろいろテクニックを使っている。
    • ポテンシャルの近くでは、計算点を多くとり計算精度をあげている。r = 0.025, 0.050, 0.075, 0.100, 0.125, 0.150, 0.175, 0.200, 0.250, 0.300, 0.350, 0.400, 0.500, 0.600, 0.700, 0.800, 1.000, 1.2000, 1.400, ... fm.
    • 実数変数は Double precision を用いているが、実数値は単精度。例えば 1.0/EX など。すべて倍精度にするには、1.0d0/EX と書き換える。
    • ファイルへの出力は小数点以下6桁で出力しているので、場合によっては(コードの移植のために計算値をプロットして比較するときなど)精度が足りない。
    • 59.4 fm からおよそ 3.8 fm まで 0.2 fm 間隔で Störmer method を用いてシュレディンガー方程式を積分していく(参考: Encyclopedia of Mathematics - Störmer method)。積分の精度をあげると (例えば 0.2 fm を 0.1 fm にする) VWS の値が 100 keV 程度変わる。31Ne の場合、Sn = -300keV の p3/2 軌道を計算すると、0.2 fm の精度の場合 VWS = -46.75 MeV となるが (PRC81(2010)021304)、 精度をあげていくと VWS = -46.83 MeV あたりに近づくようだ。

    • Störmer method は前 5 点 の二階微分の値が必要。コード内だと r = 0.0 fm における値を 4 回使っている。より精度の高い計算をすると、この初期値が効いてくる。
    • 外側から計算した波動関数と内側から計算した波動関数を 3.8 fm 地点で接続させる際、傾きを計算するが、前後 2 点, 計 4 点 の値を使って正確に計算しているようだ。しかし、ポテンシャルの深さの決定には、ここはあまり効かないかも?
    • コードを移植する際、同じアルゴリズムで倍精度の変数を用いれば、大体の値は 9 桁以上で一致する。ただし、シュレディンガー方程式を端から積分していく場合、最初は9桁で合っていた値でも若干変わっていき、5桁程度の一致になる(r = 59.8 fm --> 3.8 fm の場合)。

  • main-eg.f

サブルーチン

変数名

意味

MAIN

ISTRTW

バレンス中性子のスピンの大きさを 2 倍したもの

1

MAIN

VSO

$$ V_{so}(r) = -V_{WS} v \left(\frac{\Lambda}{2}\right)^2\frac{1}{r}\frac{df(r)}{dr}\left(\vec{\sigma}\cdot\vec{\ell}\right)$$v (PRC69(2004)041306(R). (1) 式参照) 。
Vso(r) の方ではないので注意。

32 (Β安定線上の核のスタンダードな値)

MAIN

DFN

diffuseness。$$f(r) = \frac{1}{1+\exp\left(\frac{r-R}{a}\right)}$$a (PRC69(2004)041306(R). (2) 式参照)。

0.67 fm (Β安定線上の核のスタンダードな値)

MAIN

RZERO

$$R=r_0A^{-1/3}$$r0 (PRC69(2004)041306(R). (2) 式参照)。

1.27 fm (Β安定線上の核のスタンダードな値)

MAIN

TMAS

コアの質量数。これを AT とする。

-

MAIN

PMAS

バレンス中性子の質量数。 これを AP とする。

1

MAIN

RMAS

コアとバレンス中性子の質量数の換算質量"数"。これを Aμ とする。
1/Aμ = 1/AP + 1/ATAμ = ATAP/(AT+AP)

大雑把には 1

MAIN

CHARGE

バレンス中性子の電荷 Z

0

MAIN

WNUNIT

$$\frac{\sqrt{2M}}{\hbar}$$M は中性子または陽子の質量 (変数 CHARGE によって変わる)。

中性子 : 0.21968 MeV-1/2fm-1
陽子 : 0.21953 MeV-1/2fm-1^

MAIN

CFUNIT

$$\frac{\hbar^2}{2MA_\mu}$$M は中性子または陽子の質量。

大雑把には ?

MAIN

XBFAC

AT1/3

-

MAIN

XBAR

R = r0AT1/3。コアの核半径。

-

MAIN

XCPLE

動径方向の波動関数を出力するときの範囲

60 fm

MAIN

XMES2

動径方向の波動関数を出力するときのステップ。これを Δr とする。

0.2 fm

MAIN

NXMAX

計算範囲のステップ数

300

MAIN

NXRM

コアの核半径のステップ数。 R/Δr。

-

MAIN

RCWL

$$\frac{\hbar}{2MA_\mu c}$$。Reduced Compton WaveLength of nucleon $$\Lambda = \frac{\hbar}{m_r c}$$ を 2 で割ったもの $$ \left(\frac{\Lambda}{2}\right)$$

-

MAIN

JJ1, JJROW, J1

バレンス中性子の全角運動量 j の大きさを 2 倍したもの

-

MAIN

LL1, LLROW, L1

バレンス中性子の軌道角運動量 l の大きさを 2 倍したもの

-

VMACH

SPFC

$$4\left(\vec{\sigma}\cdot\vec{\ell}\right) = 4\left(2\vec{s}\cdot\vec{\ell}\right) = 8[j(j+1)-\ell(\ell+1)-s(s+1)]$$

-

VMACH

SPFACT

$$\left(\vec{\sigma}\cdot\vec{\ell}\right) = \left(2\vec{s}\cdot\vec{\ell}\right) = 2[j(j+1)-\ell(\ell+1)-s(s+1)]$$

-

VMACH

EZERO, ECM

中性子分離エネルギー Sn のマイナス

-

VMACH

VSX

ウッズサクソンポテンシャルの深さ VWS の初期値

典型的には -40~50 MeV

VMACH

DELEDR

ウッズサクソンポテンシャルの深さ VWS をサーチする際の微小変化量

0.0001 MeV

POTENV

COE1

サブルーチン POTENV 内で用いるウッズサクソンポテンシャルの深さ VWS

-

POTENV

COE2

Zeff = 1.4398650 Z (?)

-

POTENV

COE3

$$V_{\rm WS} v \left(\frac{\Lambda}{2}\right)^2\frac{1}{a}$$

-

POTENV

COE4

VWS/a

-

POTENV

XBARC

Rc = r0''c''AT1/3。コアの陽子半径。

-

POTENV

VCLFC1

Zeff/(2*Rc)

-

POTENV

NDFMES

原点付近の波動関数を精度良く計算するため、動径方向を分割するが、その時の分割領域数。

4

POTENV

XMES1

原点付近での波動関数を計算する際のステップ

-

POTENV

X

動径方向の変数 r

-

POTENV

DX

動径方向の変数の微小区間 Δr

-

POTENV

EX

$$\exp\left(\frac{r-R}{a}\right)$$

-

POTENV

EXINV

$$\frac{1}{1+\exp\left(\frac{r-R}{a}\right)}$$

-

POTENV

NX

各微小区間の番号

1 ~ 300?

POTENV

VCENTR(NX)

各微小区間に対する $$V_{WS}\frac{1}{1+\exp\left(\frac{r-R}{a}\right)}$$

-

POTENV

VSPIN(NX)

各微小区間に対する $$-V_{WS} v \left(\frac{\Lambda}{2}\right)^2\frac{1}{r}\frac{df(r)}{dr} = V_{WS} v \left(\frac{\Lambda}{2}\right)^2\frac{1}{a}\frac{1}{r}\frac{\exp\left(\frac{r-R}{a}\right)}{\left(1+\exp\left(\frac{r-R}{a}\right)\right)^2}$$

-

POTENV

VCOULM(NX)

各微小区間に対するクーロンポテンシャル。
$$ \left\{ \begin{array}{ll}  \frac{Z_{eff}}{2R_{c}}\left(3-\left(\frac{r}{R_{\rm c}}\right)^2\right) & (r \le R_{c})\\ \frac{Z_{\rm eff}}{r} & (r > R_{c}) \end{array} \right.$$

-

POTENV

VKR(NX)

各微小区間に対する $$\frac{V_{WS} r}{a}\frac{\exp\left(\frac{r-R}{a}\right)}{\left(1+\exp\left(\frac{r-R}{a}\right)\right)^2}$$

-

POTENV

VKRS1(NX)

各微小区間に対する $$\frac{V_{WS}}{a}\frac{\exp\left(\frac{r-R}{a}\right)}{\left(1+\exp\left(\frac{r-R}{a}\right)\right)^2}$$

-

POTENV

VKRS2(NX)

各微小区間に対する $$\frac{V_{WS}}{a}\frac{\left(\exp\left(\frac{r-R}{a}\right)\right)^2}{\left(1+\exp\left(\frac{r-R}{a}\right)\right)^3}$$

-

VMACH

E1

中性子分離エネルギー Sn の絶対値

-

VMACH

WN

$$\frac{\sqrt{2MA_\mu |-S_n|}}{\hbar}$$

-

VMACH

WNINI

$$\frac{\sqrt{2MA_\mu (-S_n-V_{WS})}}{\hbar}$$

-

AHNKEV

L1

バレンス中性子の軌道角運動量 l の大きさを 2 倍したもの

-

AHNKEV

LL

バレンス中性子の軌道角運動量 l の大きさ + 1

-

AHNKEV

X

計算範囲の少し外 (NXMAX+3) * XMES2 = 60.6 からスタート。

-

AHNKEV

NQ

((NXMAX+2)*XMES2 ~ (NXMAX-2)*XMES2) : 60.4, 60.2, 60.0, 59.8, 59.6 fm に対応する 5 点に対して Hankel 関数を計算 。

-

AHNKEV

RHOMX,R

$$\frac{r\sqrt{2MA_\mu |-S_n|}}{\hbar}$$

-

AHNKEV

RI

$$\frac{\hbar}{r\sqrt{2MA_\mu |-S_n|}}$$

-

AHNKEV

EX

$$\exp\left(\frac{-r\sqrt{2MA_\mu |-S_n|}}{\hbar}\right)$$

-

AHNKEV

G(1)

EX * RI = $$\frac{\hbar}{r\sqrt{2MA_\mu |-S_n|}}\exp\left(\frac{-r\sqrt{2MA_\mu |-S_n|}}{\hbar}\right)$$

-

AHNKEV

G(2)

EX * (RI + RI**2)

-

AHNKEV

G(3)

EX * (2*RI + 3*RI**2 + 3*RI**3)

-

AHNKEV

G(L+2)

G(L+2) = (2L + 1) * RI * G(L+1) + G(L)

-

AHNKEV

LL2

バレンス中性子の軌道角運動量 l の大きさ - 1

-

AHNKEV

GCRA(LL,NQ)

バレンス中性子の軌道角運動量 l の大きさ + 1 と 60.4, 60.2, 60.0, 59.8, 59.6 fm の 5 点に対する Hankel 関数の値を格納?

-

  • サブルーチン VMACH での各変数の値

ITEI

INEX

NDMAX

ND

FND

DX

K2COR2

X_ini

NXIMIN

N3

X

NXIMAX

N3

X

NXMAX3

NXPRCH

NNX

1

1

4

1

1

0.025

-1

0

2

1

0.025

8

7

0.175

3

2

1

1

4

2

2

0.05

3

0.15

5

8

0.2

8

11

0.35

5

3

1

1

4

3

4

0.1

7

0.3

5

12

0.4

8

15

0.7

5

3

1

1

4

4

8

0.2

11

0.6

5

16

0.8

21

32

4

17

5

3

1

2

1

1

1

-0.2

311

59.8

1

310

59.6

281

30

3.6

276

  • 動径方向シュレディンガー方程式の解き方
  • $$y_{n+1} = 2y_n-y_{n-1} + h^2\left( \frac{299}{240}y''_n - \frac{11}{15}y''_{n-1} + \frac{97}{120}y''_{n-2} - \frac{2}{5}y''_{n-3} + \frac{19}{240}y''_{n-4}\right) $$

  • Störmer method を用いて解を求めている(参考: Encyclopedia of Mathematics - Störmer method)。これで解くのはなにか理由があるのだろうか?

  •  

  • cc-nilson-g.f

    • \newcommand{\dfrac}{\displaystyle\frac}
\begin{eqnarray*}
\det\left(
\begin{array}{ccc}
a_{1,1} & \cdots & a_{1,n} \\
\vdots  & \ddots & \vdots \\
a_{n,1} & \cdots & a_{n,n}
\end{array}
\right)&=&
a_{n,1}
\det\left(
\begin{array}{cccc}
\dfrac{a_{1,1}}{a_{n,1}}   & a_{1,2}   & \cdots & a_{1,n}   \\
\vdots                     & \vdots    & \ddots & \vdots    \\
\dfrac{a_{n-1,1}}{a_{n,1}} & a_{n-1,2} & \cdots & a_{n-1,n} \\
1                          & a_{n,2}   & \cdots & a_{n,n}
\end{array}
\right)
\end{eqnarray*}

  • ここで
    • \begin{eqnarray*}
\det\left(
\begin{array}{cc}
A & B  \\
C & D 
\end{array}
\right)
= \det(AD-BC)
\end{eqnarray*}

  • より(これは違ってた。。。以下間違ってるかも)、
    • \newcommand{\dfrac}{\displaystyle\frac}
\begin{eqnarray*}
\det\left(
\begin{array}{ccc}
a_{1,1} & \cdots & a_{1,n} \\
\vdots  & \ddots & \vdots \\
a_{n,1} & \cdots & a_{n,n}
\end{array}
\right)
&=&
a_{n,1}
\det\left(
\left(
\begin{array}{c}
\dfrac{a_{1,1}}{a_{n,1}}   \\
\vdots                     \\
\dfrac{a_{n-1,1}}{a_{n,1}} \\
\end{array}
\right)
\left(
\begin{array}{ccc}
a_{n,2}   & \cdots & a_{n,n}
\end{array}
\right)
-1\cdot\left(
\begin{array}{ccc}
a_{1,2}   & \cdots & a_{1,n}   \\
\vdots    & \ddots & \vdots    \\
a_{n-1,2} & \cdots & a_{n-1,n}
\end{array}
\right)
\right)\\
&=&
a_{n,1}
\det\left(
\left(
\begin{array}{ccc}
\dfrac{a_{1,1}}{a_{n,1}}a_{n,2}   & \cdots & \dfrac{a_{1,1}}{a_{n,1}}a_{n,n} \\
\vdots                     & \ddots  & \vdots  \\
\dfrac{a_{n-1,1}}{a_{n,1}}a_{n,2} & \cdots & \dfrac{a_{n-1,1}}{a_{n,1}}a_{n,n}\\
\end{array}
\right)
-
\left(
\begin{array}{ccc}
a_{1,2}   & \cdots & a_{1,n}   \\
\vdots    & \ddots & \vdots    \\
a_{n-1,2} & \cdots & a_{n-1,n}
\end{array}
\right)
\right)
\\
&=&
a_{n,1}
\det
\left(
\begin{array}{ccc}
\dfrac{a_{1,1}}{a_{n,1}}a_{n,2}-a_{1,2}   & \cdots & \dfrac{a_{1,1}}{a_{n,1}}a_{n,n}-a_{1,n} \\
\vdots                     & \ddots  & \vdots  \\
\dfrac{a_{n-1,1}}{a_{n,1}}a_{n,2}-a_{n-1,2} & \cdots & \dfrac{a_{n-1,1}}{a_{n,1}}a_{n,n}-a_{n-1,n} \\
\end{array}
\right)
\\
&=&
(-1)^{n-1}a_{n,1}
\det
\left(
\begin{array}{ccc}
a_{1,2}-\dfrac{a_{1,1}}{a_{n,1}}a_{n,2}   & \cdots & a_{1,n}-\dfrac{a_{1,1}}{a_{n,1}}a_{n,n} \\
\vdots                     & \ddots  & \vdots  \\
a_{n-1,2}-\dfrac{a_{n-1,1}}{a_{n,1}}a_{n,2} & \cdots & a_{n-1,n}-\dfrac{a_{n-1,1}}{a_{n,1}}a_{n,n} \\
\end{array}
\right)
\end{eqnarray*}