変分法と変分原理

実用本位で短めの説明にしました。

[
前の記事へ]  [量子力学の目次へ]  [次の記事へ]


変分法って要するにこれだけ

 多電子原子の状態や分子の結合の問題をシュレーディンガー方程式を使って解いてみたいのだが、複雑過ぎて簡単には解けない。そこで、昔から知られている幾つかの計算手法やその問題点について学ぶところから始めることにしよう。そのために、まずは変分法から説明しておくのが良いと思う。他の近似解法を使うときに当たり前のように使われるものだからだ。

 ハミルトニアン\( \hat{H} \)というのは系の全エネルギーを意味する演算子であり、次のような計算をすればエネルギーの期待値\( \langle E \rangle \)が求められる。
\[ \begin{align*} \langle E \rangle \ =\ \int \psi^{\ast}(x) \hat{H} \psi(x) \diff x \tag{1} \end{align*} \]
 もし\( \psi(x) \)がちょうど\( \hat{H} \)の固有関数になっていれば\( \hat{H} \psi(x) = E \psi(x) \)という関係になっているので、上の計算で求まるのは期待値\( \langle E \rangle \)というよりは、きっかり\( E \)だということになる。しかし\( \psi(x) \)がそのような固有値\( E \)を持つ状態からずれた状態で得られるエネルギーの期待値がどうなるのかということを含めて考えて行きたいのでこのような式を使って話を始めてみた。

 さて、基底状態というのはエネルギーが最低になって安定している状態である。そのような状態というのはエネルギーの値が確定しているのだから、ハミルトニアン\( \hat{H} \)の固有状態になっていることだろう。すると、そのような状態から少しでも波動関数\( \psi(x) \)の形がずれることがあれば、エネルギーの期待値\( \langle E \rangle \)はそのエネルギー最低状態の\( E \)よりは大きくなるであろう。

 おお、これは使えそうだ!

 複雑過ぎて\( \psi(x) \)を求めることができないシュレーディンガー方程式\( \hat{H} \psi = E \psi \)があるとき、\( \psi(x) \)として何か当てづっぽうの関数を (1) 式に代入して計算してやって、なるべく\( \langle E \rangle \)の値が小さくなるものを探してやればいいのではないだろうか。どんな関数を代入したとしても基底状態のエネルギー\( E \)より小さくなることはないのだから、\( \langle E \rangle \)の値が「より小さく」なるようなものこそが、求めたい状態のエネルギーに「より近い」のだと言えるわけだ。

 このような当てづっぽうの関数のことを「試行関数」と呼ぶ。

 もう少し効率の良い方法として、試行関数に自由な変数を含ませておくと良い。結果のエネルギーの値はその変数を含んだ形で出てくるだろうから、そのエネルギー値が出来るだけ小さくなるように変数を動かしてやることができる。

 もちろん、変数をいじっても正確な解にはたどり着けない可能性がある。そして、得られたエネルギーが正解にどれだけ近いのかを知るすべもない。様々な関数を試してみて、出来るだけエネルギーが小さくなるようにするのである。これが「変分法」である。

 試行関数としてあらかじめちゃんと規格化してある関数を使うなら (1) 式で計算すれば良いが、そうでない場合には次の式を使う必要がある。
\[ \begin{align*} \langle E \rangle \ =\ \frac{ \int \psi^{\ast}(x) \hat{H} \psi(x) \diff x}{ \int \psi^{\ast}(x) \psi(x) \diff x} \tag{2} \end{align*} \]
 これは規格化していなかった分だけ後から割ってやるというだけのことであって、ごく当たり前の話だ。


正解に近付くコツ

 効率よく正解に近付くための試行関数の選び方のコツを知りたいところだが、理論的な指針はほとんどない。解こうとしている方程式の物理的な意味を考えて、そこから予想される関数の形を想像して、それに近い関数を使うということがよく行われる。あとは文字通り「試行」するしかない。

 パラメータの数を増やした複雑な関数や多項式を使えば正解付近をかすめる可能性が上がるだろう。しかし計算量が増えてしまうし、得られた近似的な関数は不自然にボコボコしていたりする可能性もある。どこまでが解の本当の性質かが分かりにくい。計算結果から物理的な性質を正しく読み取るのが難しくなるわけだ。

 得られたエネルギーの値が正解の値に近ければ近いほど、関数の形も正解に近いとは言える。しかしそれは関数の誤差の 2 乗を全域で積分した値が 0 に近付くというくらいの意味である。つまり、エネルギーの値がピッタリ正解にならない限りは、全域で正解に似た形をしているという保障がない。しかも、正しいエネルギーが幾つであるのかは計算では知りようがないのである。
 まったくヒントがないわけでもない。 基底状態のエネルギーは実験的に得られることが多いので、それに近付くように関数を試行錯誤して頑張ることができるだろう。
 この辺りの理論的背景をここであれこれ書くのはやめておこう。詳しく知りたい人には次に紹介する本が役に立つ。

 全 6 章のうち、第 5 章と第 6 章が量子力学の変分原理の話である。理論的な証明などは第 5 章の中の数箇所にごく短く書いてあるだけなのだが、この手法についてどの程度のことが言えるのかという雰囲気が分かって面白い。


基底状態以外についても計算できる

 エネルギーが最低となる状態を当てずっぽうで探すというだけの手法なのだが、励起状態のエネルギーの値を計算することも出来る。励起状態は最低エネルギーではないのに、どうやればそんなことが可能なのだろうか?

 異なる固有値に属する固有関数は互いに直交するという性質があるのだった。だから、まず基底状態の関数を近似的に求めてやって、その関数に直交するような試行関数を使ってエネルギー最低となる形を探せば、それは基底状態の次にエネルギーの低い状態を探していることになる。近似的に第 1 励起状態に近い関数が得られるだろう。


なぜ変分法と呼ぶか

 上で説明し終えたようなたったこれだけの手法が、なぜ変分法と呼ばれているのかがちょっと気になる。

 これは実は理論的には変分原理というものが裏にあるのである。変分原理は解析力学にも出てきた。粒子の軌道を表す関数によって作用\( I \)が決まるようにしておいて、関数の形を少しずつずらしてゆき、その微小変化に対して作用\( I \)の微小変化が 0 になるときの関数の形こそが、現実の世界での粒子が動く軌道を表しているのだ、という理論形式であった。その関数の形に加える微小変化のことを変分と呼んだのである。

 それが今回の話とどう関係しているかと言うと、理論形式が似ているのである。(1) 式を見ると、波動関数の形によって\( \langle E \rangle \)の値が決まるようになっている。この\( \langle E \rangle \)の値が解析力学での作用\( I \)に相当しているわけだ。そして、波動関数の形を少しずつずらして行ったときに、\( \langle E \rangle \)の値の微小変化が 0 になるときの関数こそがシュレーディンガー方程式を満たす解だ、という理論形式である。とても良く似ているだろう。
 少し補足しておくと、\( \langle E \rangle \) が最小値であるときには関数をどのように無限小だけずらしてみても それに対する \( \langle E \rangle \) の 1 次の変化量は 0 だと言えるわけで、 変分法で \( \langle E \rangle \) が最小となるような関数こそが正しい解だとしている理由を変分原理ではこのように説明するのである。
 実際、(1) 式を前提にすると、この変分原理からシュレーディンガー方程式が導かれることになる。こういう話は先ほど紹介した教科書にも載っている。
 変分原理によってシュレーディンガー方程式が導出されるというので、これはすごい内容なのではないかと思うかも知れないが、 前提として (1) 式を使っているのであり、そこには期待値の計算的な定義や、ハミルトニアンという謎の演算子が含まれてしまっている。 それらの物理的な意味を最初に受け入れた上でようやくシュレーディンガー方程式が出てくるという話だから、ちょっとずるいのである。
 こういう理論的背景を知らなくても変分法を使うのに差し障りはないので安心してほしい。実際、上では変分原理の話を経由することなく変分法の原理を説明したではないか。