nano_exit

基礎的なことこそ、簡単な例が必要だと思うのです。

励起状態に対する(定常状態)変分法について

「変分で求めた基底エネルギーは、真の基底エネルギーよりも高い」のは良い。

しかし、「(定常)変分で求めた励起状態エネルギーは、真の励起状態エネルギーよりも高い」ことの証明は、ネット上でチラホラ見掛けるが、間違っている。励起状態に関しては、何も保証されない。

言葉の整理として、変分法で求めた状態(波動関数)を \psiで表し、真の波動関数 \phiとする。
真の波動関数 \phiハミルトニアン Hの固有状態であるから、以下が成り立つ。

\displaystyle
H \phi_n = E_n \phi_n
しかし、変分波動関数 \psi Hの固有状態ではないから、期待値としてしかエネルギー \tilde Eを定義出来ない。

\displaystyle
H \psi_n \neq \tilde E_n \psi_n
\\
\displaystyle
\tilde E_n = \frac{ \left\langle \psi_n | H | \psi_n \right\rangle }{ \left\langle \psi_n | \psi_n \right\rangle }
これを用いて、まずは基底状態に関する証明から見てみる。

\displaystyle
\tilde E_n
  = \frac{ \left\langle \psi_0 | H | \psi_0 \right\rangle }{ \left\langle \psi_0 | \psi_0 \right\rangle }
  = \frac{ \sum_{nn'} c_n^{0*} c_{n'}^0 \left\langle \phi_n | H | \phi_{n'} \right\rangle }{ \sum_{nn'} c_n^{0*} c_{n'}^0 \left\langle \phi_n | \phi_{n'} \right\rangle }
\\
\displaystyle
\qquad
  = \frac{ \sum_{n} |c_n^{0}|^2 E_n }{ \sum_{n} |c_n^0|^2 }
  \ge E_0 \frac{ \sum_{n} |c_n^{0}|^2 }{ \sum_{n} |c_n^0|^2 }
  = E_0
これは合っている。

問題は励起状態 \tilde E_n \, (n \neq 0)である。
他のサイトでの説明では、励起状態に対して \psi_m = \sum_{n=0} c_n \phi_n であるところを、 \psi_m = \sum_{n>m} c_n \phi_n としている。
つまり、 \sum_{n=0} \rightarrow \sum_{ n >m }に置き換えて話が進んでいる。
この波動関数の置き換えがおかしい。

変分法を用いた励起状態の求め方というのは、

  1. 基底状態を「変分」で求める。(したがって得られる基底状態 \phi_0ではなく、 \psi_0である。)
  2. 「変分」基底状態 \psi_0に直交する条件を課して変分を行うことで、「変分」第一励起状態 \psi_1が求まる。
  3. 「変分」基底状態 \psi_0と「変分」第一励起状態 \psi_1の両方に直交する条件を課して変分を行うことで、「変分」第二励起状態 \psi_2が求まる。

以下、省略。

つまり、変分波動関数 \psiで閉じており、真の波動関数 \phiは出て来ない。
それは当たり前で、真の波動関数が求まるなら変分なんかする必要が無い。(計算が早いから近似的に欲しいとか、そういう需要はあるかもしれないが、それは完全に別用途である。)

そのため、 \left\langle \psi_0 | \psi_1 \right\rangle = 0は上の手続きから保証されているが、一般に \psi_0 \neq \phi_0であり、  \left\langle \phi_0 | \psi_1 \right\rangle \neq 0である。
そして、具体的な \phi_0を知らないのだから、 \phi_0と直交化させるような手続き(例えばGram-Schmidtの正規直交化法とか)は不可能である。

したがって、真の波動関数で変分波動関数を展開するときには、いつでも全成分が必要になるはずであり、 \psi_m = \sum_{n=0} c_n \phi_n である。
このために、変分励起状態においては、一般に厳密解に対してエネルギーが高いか低いかは判断出来ない。

ゼロとの掛算はゼロに戻る証明。

和の単位元0は、あらゆる積の演算に対して自分自身に戻る。
この性質は、体の定義には含まれておらず、定理として導かれる。
そこで、体 Kに含まれる元 a \in Kに対して、 0a = 0であることを証明する。

先に、後で使う定理を導いておく。
 b + b = b \Leftrightarrow b = 0
以下証明。和の単位元0の性質より、

\displaystyle
b = b + 0 = b + ( b + (-b) )
 b + b = bであるから、

\displaystyle
b + ( b + (-b) ) = ( b + b ) + (-b) = b+ (-b) = 0
\\
\displaystyle
\therefore
b = 0
「自分自身と足して自分自身に戻るものはゼロ」ということを表している。

以下、お目当ての証明に戻る。
前回の時もそうだが、単位元0を如何に弄り倒すかがポイントのように思われる。
koideforest.hatenadiary.com

和の単位元0の性質から、

\displaystyle
0a = ( 0 + 0 )a
分配律(和と積が混ざる唯一の律)より、

\displaystyle
( 0 + 0 )a = 0a + 0a
したがって、先に示した定理を使えば、証明が完了する。

\displaystyle
0a = 0a + 0a \Leftrightarrow 0a = 0

和の逆元が唯一つ存在することの証明。

この手の問題は、ついつい当たり前として証明をサボってしまうので、一つ一つ丁寧にやっていくことにする。

 Kにおいて、 a \in Kとすると、

\displaystyle
a + (-a) = 0
となる逆元 -a \in Kが存在する。
 0 \in Kは和において単位元の役割を果たす。

この時、逆元が唯一つしか存在しないことを、単位元 0および逆元の性質、交換律そして結合律を使って証明する。

証明の方法としては、背理法に属すると思われる。
背理法の厳密な定義については、以下を参照。
koideforest.hatenadiary.com

「逆元が -a以外に存在する」と仮定して、そこから「何かしら」の矛盾が引き出せればそこで証明完了となる(仮定の否定が真になる)。

「逆元が -a以外に存在する」を定式化すると、

\displaystyle
a + b = 0 \, ( b \neq -a )
となる。
ここから「何かしら」の矛盾を示せば良いが、「 \neq」が既に現れているため、「 b = -a」を目指せば矛盾を導き易そうだなと発想する。

まずは単位元の性質から、

\displaystyle
  -a = -a + 0
次に、仮定より

\displaystyle
  -a + 0 = -a + ( a + b )
結合律を使って、

\displaystyle
  -a + ( a + b ) = ( -a + a ) + b
交換律を使えば、

\displaystyle
  ( -a + a ) + b = ( a + (-a) ) + b
逆元の性質から、

\displaystyle
  ( a + (-a) ) + b = 0 + b
交換律より

\displaystyle
  0 + b = b + 0
単位元の性質から、

\displaystyle
  b + 0 = b
したがって、 -a = bが言えたので、仮定である b \neq -aと矛盾し、仮定の否定「逆元は -a以外に存在しない」=「逆元は -a唯一つ」が真であることを証明出来た。

上の操作は、結局、「 a + b = 0 \Leftrightarrow b = -a」、つまり「項の移行」を厳密に行ったということに他ならない。
「項の移行」の操作をまとめれば、

  1. 片側の項だけ残す。
  2. 単位元0を出現させる。
  3. 単位元0を元の式で置き換える。
  4. 各元の性質や、各律を使って整理する。

と言える。

多変数関数の連続性

変数が増えると、一見連続そうに見えても、不連続な場合がある。

例1:  f(x,y) = ( x - y) / ( x + y ) \, (0 \notin x,y ), \, f( 0, 0 ) = 0

import numpy as np
from matplotlib import pyplot as plt

def arbitrary_function( x, y ):
    return ( x - y ) / ( x + y + 1e-7 )

N = 1000
x_min, x_max = -1, 1
y_min, y_max = -1, 1

x1 = np.linspace( x_min, x_max, N )
y1 = np.linspace( y_min, y_max, N )
X, Y = np.meshgrid( x1, y1 )

Z = np.zeros( ( N, N ) )
for ix, x_ in enumerate( x1 ):
    for iy, y_ in enumerate( y1 ):
        Z[ iy ][ ix ] = arbitrary_function( x_, y_ )  # Caution: not Z[ ix ][ iy ]

fig = plt.figure( figsize = ( 5, 4 ) )
ax = fig.add_subplot( 1, 1, 1 )
c = ax.pcolor( X, Y, Z, cmap = 'viridis', vmin = -1, vmax = 1)  # or "pcolormesh"
fig.colorbar( c )
plt.savefig("discontiniuation1.png")
plt.show()

f:id:koideforest:20190713160137p:plain
 y = -x上で不連続であることがわかる。

例2:  f(x,y) = 2xy / (x^2 + y^2 ) \, (0 \notin x,y ), \, f(0,0) = 0

def arbitrary_function( x, y ):
    return 2 x y / ( x**2 + y**2 + 1e-7 )

f:id:koideforest:20190713173758p:plain
 x, y = ( 0, 0 )で不連続になっている。
これは、x軸上および y軸上で値ゼロだが、対角線方向では-1 or 1の定数となるため、原点付近の微小量が方向に強く依存してしまっているためである。

マクスウェル方程式とゲージ変換

ほぼ自分用の初等的なメモ

Wikipedia
マクスウェルの方程式 - Wikipedia

マクスウェル-ガウスの式

\displaystyle
\nabla \cdot \epsilon_0 \boldsymbol E = \rho

磁化保存の式だけ人の名前がついていない。

\displaystyle
\nabla \cdot \boldsymbol B = 0

ファラデー-マクスウェルの式

\displaystyle
\nabla \times \boldsymbol E + \frac{ \partial \boldsymbol B }{ \partial t } = 0

アンペール-マクスウェルの式

\displaystyle
\nabla \times \frac{ \boldsymbol B }{ \mu_0 } - \frac{ \partial \, \epsilon_0 \boldsymbol E }{ \partial t } = \boldsymbol j


ここから、各ポテンシャルとそれらのゲージ変換不変を導く。

磁化保存の式から

\displaystyle
\boldsymbol B =: \nabla \times \boldsymbol A
\\
\displaystyle
(\because \nabla \cdot ( \nabla \times \boldsymbol A ) = 0 )
\\
\displaystyle
\therefore \boldsymbol A' = \boldsymbol A + \nabla \chi
\\
\displaystyle
(\because \nabla \times ( \nabla \chi ) = 0 )

よって、ベクトルポテンシャル \boldsymbol Aは変換 \boldsymbol A \rightarrow \boldsymbol A + \nabla \chiに対して磁場を不変に保つ。

次にファラデー-マクスウェルの式より、

\displaystyle
\nabla \times \left( \boldsymbol E + \frac{ \partial \boldsymbol A }{ \partial t } \right) = 0
\\
\displaystyle
\therefore
\boldsymbol E + \frac{ \partial \boldsymbol A }{ \partial t } = - \nabla \phi
\\
\displaystyle
( \because \nabla \times (\nabla \phi) = 0 )
スカラーポテンシャル \phiの負符号は慣習である。
これにより、

\displaystyle
\boldsymbol E = - \nabla \phi - \frac{ \partial \boldsymbol A }{ \partial t }
電場 \boldsymbol Eを不変に保つようなスカラーポテンシャル \phiの変換を考える。

\displaystyle
\boldsymbol E' = - \nabla \phi' - \frac{ \partial \boldsymbol A }{ \partial t } - \frac{ \partial \nabla \chi }{ \partial t }  
\\
\displaystyle
\therefore
\nabla \phi' - \nabla \phi + \frac{ \partial \nabla \chi }{ \partial t } 
  = \nabla \left( \phi' - \phi + \frac{ \partial \chi }{ \partial t } \right) 
  = 0
\\
\displaystyle
(\because E - E' = 0 )
\\
\displaystyle
\therefore
 \phi' = \phi - \frac{ \partial \chi }{ \partial t }

これで、 \phi \boldsymbol Aをゲージ変換も含めて導出することが出来た。
ここだけなら、マクスウェル方程式のうち二つだけで済む。


次に、クーロンゲージとローレンツゲージについてまとめる。

クーロンゲージは「スカラーポテンシャル \phi電荷 \rhoだけで表したい」というものである。
使う式は、マクスウェル-ガウスの式である。

\displaystyle
\nabla \cdot \epsilon_0 \boldsymbol E = \epsilon_0 \left( - \nabla^2 \phi - \frac{ \partial ( \nabla \cdot \boldsymbol A ) }{ \partial t } \right)
  = \rho
したがって、 \nabla \cdot \boldsymbol A = 0となるようにゲージ \chiを選べば( \nabla^2 \chi = - \nabla \cdot \boldsymbol A)、

\displaystyle
  - \nabla^2 \phi = \frac{ \rho }{ \epsilon_0 }
のようにスカラーポテンシャルに対するポアソン方程式が得られる。
この、 \nabla \cdot \boldsymbol A = 0のゲージの取り方をクーロンゲージと呼ぶ。

ローレンツゲージは、「(電荷スカラーポテンシャル)と(電流、ベクトルポテンシャル)の組の対応を明確にしたい」というものである。
使う式は、まだ使っていなかったアンペール-マクスウェルの式である。

\displaystyle
  \nabla \times ( \nabla \times \boldsymbol A ) + \epsilon_0 \mu_0 \left( \frac{ \partial \nabla \phi }{ \partial t } + \frac{ \partial^2 \boldsymbol A }{ \partial t^2 } \right)
  = \mu_0 \boldsymbol j
\\
\displaystyle
  \nabla \times ( \nabla \times \boldsymbol A ) + \frac{ 1 }{ c^2 } \left( \frac{ \partial \nabla \phi }{ \partial t } + \frac{ \partial^2 \boldsymbol A }{ \partial t^2 } \right)
  = \mu_0 \boldsymbol j
外積の二個掛けは、以下のベクトル解析の公式が知られている。

\displaystyle
  \boldsymbol a \times \boldsymbol b \times \boldsymbol c
    = \boldsymbol b ( \boldsymbol a \cdot \boldsymbol c ) - \boldsymbol c ( \boldsymbol b \cdot \boldsymbol a )
    = ( \boldsymbol a \cdot \boldsymbol c ) \boldsymbol b - ( \boldsymbol b \cdot \boldsymbol a ) \boldsymbol c
したがって、

\displaystyle
  \nabla ( \nabla \cdot \boldsymbol A ) - \nabla^2 \boldsymbol A + \frac{ 1 }{ c^2 } \left( \frac{ \partial \nabla \phi }{ \partial t } + \frac{ \partial^2 \boldsymbol A }{ \partial t^2 } \right)
  = \mu_0 \boldsymbol j
\\
\displaystyle
  - \nabla^2 \boldsymbol A + \frac{ 1 }{ c^2 } \frac{ \partial^2 \boldsymbol A }{ \partial t^2 } + \nabla \left( \nabla \cdot \boldsymbol A + \frac{ 1 }{ c^2 } \frac{ \partial \phi }{ \partial t } \right)
  = \mu_0 \boldsymbol j
ここで、 \nabla \cdot \boldsymbol A + \frac{ 1 }{ c^2 } \frac{ \partial \phi }{ \partial t } = 0となるようにゲージを選ぶのがローレンツゲージである。
ローレンツゲージをとれば、ベクトルポテンシャルに関する波動方程式が得られる。

\displaystyle
  \left( \frac{ 1 }{ c^2 } \frac{ \partial^2 }{ \partial t^2 } - \nabla^2 \right) \boldsymbol A  = \mu_0 \boldsymbol j
一方、マクスウェル-ガウスの式からは、ローレンツゲージを採用することでスカラーポテンシャルに関する波動方程式が得られる。

\displaystyle
  - \nabla^2 \phi - \frac{ \partial (\nabla \cdot \boldsymbol A) }{ \partial t } = \frac{ \rho }{ \epsilon_0 }
\\
\displaystyle
  \left( \frac{ 1 }{ c^2 } \frac{ \partial^2 }{ \partial t } - \nabla^2 \right) \phi = \frac{ \rho }{ \epsilon_0 }
このように、対応関係がハッキリとわかる。


ポテンシャルとゲージ変換を導出することで、マクスウェル方程式の全ての式を満遍なく触ることが出来るのは、非常に教育的だと思った次第である。

背理法をよく考えながら、Hohenberg-Kohnの第一定理を考える。

Hohenberg-Kohnの第一定理は以下の様なものである。
「外場 V_{ext}基底状態電子密度 n_0は一対一対応する。」
これは、背理法で証明されることがほとんどだろう。

しかし、背理法そのものについて学ぶことは、あまりない気がしたので、ここでまとめる。

「命題」を、「真(True: T)か偽(False: F)のどちらかに定まる文」と定義する。

命題 P, Qの間になんらかの結合規則を用いることで、新しく命題を作ることが出来る。
例えば、 P \lor Qは「 P,Qが共にFでない限りT」とする結合規則であり、一方で P \land Qは「 P,Qが共にTでない限りF」とする規則である。
集合で考えると、 P \lor Qは集合和 P \cup Qで、 P \land Qは共通部分 P \cap Qである。

また、 P, Qが、全く同じ真偽値を取るとき、 P \equiv Qと書き、「同値である」と言う。
更に、 \bar P Pの「否定」であり、真偽をひっくり返したものに対応する。集合では補集合 P^cがそれに当たる。

ここから、重要な結合規則として、 P \Rightarrow Qを考える。これは「含意」と呼ばれ、集合論では P \subset Qに対応する。
言葉ではよく、「 Pならば Q」と表現され、集合との対応も良い(Pの中に入っていればQも同時に満たす:十分条件)のだが、一方で真偽表現ではクセがある。
含意の同値表現は、 (P \Rightarrow Q) \equiv (\bar P \lor Q)である。ここで躓き易いのは、「 PがFならば問答無用で P \Rightarrow QはT」である点である。
 Pならば Q」と言うとき、無意識のうちに「 P \equiv T」という仮定をしている。もっと言えば、「 P \equiv F」のときには興味が無いのである。
そのため、「 P \equiv TのときにQがTなのかFなのか」ということに集中するため、「(F  \Rightarrow Q) \equiv T」となるように定義しているわけである。
集合的にも、 P \subset QがTであれば、 P^c \cup Qは全ての範囲を覆いつくしているのでTと言える。

それで、やっと背理法であるが、
 \{ (\bar P \Rightarrow Q) \land (\bar P \Rightarrow \bar Q) \} \equiv P 」、つまり、証明したい命題の否定に対して、「何かしらの命題 Q」に対する矛盾が示せれば、 PがTであると言える。
この Qは、自分で設定する必要があるため自由度が高く、背理法での証明がよくわからない一つの要因だと思われる。

以下、背理法が正しいことを示す証明である。(三段論法と対偶は断り無しに使った。)

\displaystyle
  \{ (\bar P \Rightarrow Q) \land (\bar P \Rightarrow \bar Q) \}
  \equiv \{ \bar P \Rightarrow ( Q \land \bar Q ) \}
  \equiv \{ (\overline{ Q \land \bar Q }) \Rightarrow P \}
\\
\displaystyle
\quad
  \equiv \{ ( \bar Q \lor Q ) \Rightarrow P \} \equiv \{ T \Rightarrow P \} \equiv P

これを元に、Hohenberg-Kohnの(第一)定理を考えれば、「外場 V_{ext}基底状態電子密度 n_0は一対一対応しない。」というのが \bar Pであり、 Qは自分で設定する必要がある。
実際の証明では、「そもそも一対一対応とは何か?(式でどう表すか?)」から考える必要があるが、最終的には「基底状態のエネルギーが満たすべき性質」を Qとして矛盾を導く。

背理法の証明で、「これはどこから出て来た?」と思うことが多かったが、その理由が背理法の高い自由度に因っていたことがわかった。

参考文献:
https://www.gakushuin.ac.jp/~881791/mathbook/