変数の無次元化

無次元化

シミュレション使しているトル (m) (s) といった使ったをせずにとしていますきさは 1 (   -10
10   m) 程度10-11   s 程度していますこのようなさなうよりもえば 1 1 いてった方が計算が簡単になることがあります。

うためには規格いますえばさの規格σ  としてr  する
       ′
r =  σr
(1)

けますこのでは′ ダッシュをつけてします

規格3 すればての規格できますが便エネルギ規格導入しますここで使するそれぞれの規格以下しま




規格


σ
m
τ
エネルギ ɛ



レナードジョーンズ(Lennard-Jonse;LJ)ポテンシャルの無次元化

アルゴンシミュレションでは互作として LJ ポテンシャル使します。( しくはしますLJ ポテンシャル
          {(   )    (   ) }
             σ- 12    σ- 6
φ(r) = 4ɛ    r    -   r
(2)

となっていますこの規格使ってしてみますエネルギ規格 ɛ  さの規格σ  とするとポテンシャルエネルギφ(r)  r  テンシャルエネルギφ ′(r)  r′ 使って
         ′
φ(r) = ɛφ (r)
(3)

r =  σr′
(4)

けます(2) (3) (4) すると
         {                }
  ′        ( 1)12   ( 1 )6
φ (r) = 4    r′   -   r′
(5)

となりLJ ポテンシャルすることがました

運動方程式の無次元化

シミュレション使する
  d2r      dφ(r)
m --2-=  - ------
  dt        dr
(6)

せますこれをすると
   σ d2r′     ɛ dφ′(r)
m --2--′2 = - ------′-
  τ  dt       σ  dr
(7)

となり規格をまとめると
    2 2 ′       ′
m-σ--d-r- = - dφ-(r)
 ɛτ2 dt′2      dr ′
(8)

となりますここでm σ2 ∕ɛτ2   められるのでこれを 1
m σ2
---2-= 1
ɛτ
(9)

すなわち
    ∘ ---2-
τ =   m-σ--
        ɛ
(10)

となり、これが時間の規格化定数を与えます

アルゴンの場合

アルゴンMD 規格としてアルゴンmAr  いるので m ′
             ′
mAr  = mArm
(11)

  ′
m  = 1
(12)

となりできますまたLJ パラメとしてはσ = 3.14  ɛ = 120kB  使 します

シミュレションとしてはρ = 1.38 × 103   (kg/m3   )T =  86.64  (K) h = 2.0  (fs) としますこれらは以下使ってできます
    m
ρ = -3-ρ′
    σ
(13)

kBT  = ɛT ′
(14)

h =  τh′
(15)

プログラミング

これらをプログラムで書く場合は、先ず適当に規格化定数を用意して値を代入し ます。

avogadro  = 6.0221367e+23;    /* アボガドロ数 (mol^-1) */
kb = 8.617080363e-5;          /* ボルツマン定数 (eV K^-1) */

unit_length = 3.4e-10;                 /* 長さ(m) */
unit_mass   = 39.948/avogadro*1e-3;    /* 質量(kg) */
unit_erg_eV = 120.*kb;                 /* エネルギー(eV) */
unit_erg_J  = unit_erg_eV*1.60219e-19; /* エネルギー(J) */
unit_time   = [?]   /* 時間(s) */

次に規格化定数を使って値を無次元化します。

density  = 1.38e+3;           /* 密度 (kg/m^3) */
target_temp = 86.64;          /* 設定温度 (K) */
h = 2.0e-15;                  /* 時間刻み幅(s) */

density /= [?]
h /= [?] 
target_temp *= [?] 
演習

上記の[?]を埋めて、以下の出力を行うようなプログラムを作成せよ。

単位長さ       3.400000e-10(m)
単位質量       6.633526e-26(kg)
単位エネルギー 1.034050e-02(eV)
単位時間       2.151411e-12(s)

無次元数密度     0.817657
無次元時間刻み幅 0.000930
無次元温度       0.722000
プログラム作成のヒント
・ √xはsqrt(x)で計算できます。
・sqrtを使うときはファイルの上方に#include <math.h> を入れる必要があります。
ソースファイル