解析力学の幾何学的側面 III

# はじめに

これまでの[解析力学の幾何学的側面](https://qiita.com/kaityo256/items/e9adf792210e8c022010)、[解析力学の幾何学的側面II](https://qiita.com/kaityo256/items/805243f7c4740a7937de)という記事では、ハミルトン系を考えていました。ハミルトン系の性質として

* 運動方程式に付随するリュービル演算子がエルミートになる
* エルミートなリュービル演算子は位相空間に非圧縮流れを引き起こす
* 時間発展演算子(propagator)がユニタリになり、時間発展を表す写像のヤコビアンが1になる(シンプレクティック変換)
* ヤコビアンが1であるから、時間発展にともなって位相空間の体積が変化しない(リュービルの定理)

というものがあります。

では、系が非ハミルトン的だったら上記の性質はどうなるでしょうか。本稿ではそのあたりを見てみます。

なお、ここで「幾何学的」と書いているのは、単に「流れ場を考えるよ」みたいな意味で使っていて、「微分幾何」や「シンプレクティック幾何学」を意味するわけではありません。

# ヤコビアンと運動方程式

以後、簡単のために一自由度系を考えますが、多自由度系でも全く同じ議論ができます。$(p,q)$で記述される空間を考えます。これをまとめて

```math
\vec{z} = 
\begin{pmatrix}
p \\
q
\end{pmatrix}
```

と書きましょう。運動方程式は、各点$(p,q)$に、その時間微分$(\dot{p},\dot{q})$を結びつける写像なので、これもまとめて

```math
\vec{\dot{z}} = 
\begin{pmatrix}
\dot{p} \\
\dot{q}
\end{pmatrix}
```

と書きましょう。この$\vec{\dot{z}}$は、位相空間の各点に速度場を作るのでした。

さて、その速度場の発散(divergence)、$\nabla \vec{\dot{z}}$を考えます[^1]。この量の意味は単位時間あたりに微小体積要素がどれだけ変化するか、その変化率を表しています。既に見たように、ハミルトン系ならこの量はゼロになり、微小体積要素は流れにそって変化しません。

[^1]: 以下、趣味で「発散」ではなく「divergence」と呼びます。

次に、ヤコビアンを考えます。ある時刻$t$に$(p,q)$にいた状態が、時刻$t+h$に$(P,Q)$に移動したとします。この時、時間発展を$(p,q)$から$(P,Q)$への写像と考えると、以下のヤコビアンが定義できます。

```math
J(t+h, t) = \frac{\partial(P,Q)}{\partial(p,q)}
```

運動方程式に従う系なので、時刻を二点指定するとヤコビアンが決まります。ヤコビアンを別の書き方をすると、

```math
dpdq = J(t+h,t) dP dQ
```

とも書けます。$dpdq$は時刻$t$における微小体積要素、$dPdQ$は時刻$t+h$における微小体積要素ですから、ヤコビアンは二つの時刻の間の微小体積要素の間の比を表す量です。ハミルトン系ならヤコビアンは常に1なので、微小体積要素が保存されます。これはリュービルの定理であり、この時の変数変換(写像)をシンプレクティック変換(写像)と呼ぶのでした。

さて、速度場のdivergenceは、微小体積要素の単位時間あたりの変化率を表し、ヤコビアンは二時刻間の微小体積要素の体積の比を表すのでした。したがって、二つの量の間には以下の関係式が成り立ちます。

```math
\begin{align}
\frac{dJ }{dt} &= \lim_{h\rightarrow 0} \frac{J(t+h,t) - J(t,t)}{h}\\
&=  (\nabla \vec{\dot{z}}) J
\end{align}
```

ここで、$ J(t,t)$は、同時刻の体積要素の比なので自明に1です。この式を形式的に積分してみましょう。

```math
\begin{align}
J(t+h,t) = \exp \left(
\int_t^{t+h} (\nabla \vec{\dot{z}}) dt
\right)
\end{align}
```

形式的には右辺には$J(t,t)$がつきますが、$J(t,t)=1$なので省きました。

この式は速度場のdivergenceとヤコビアンを結びつけます。ハミルトン系であれば、$\nabla \vec{\dot{z}}=0$でした。それは積分しても0ですから、指数関数の肩が0なので、ヤコビアンが1になります。そうでない場合は微小体積要素が時間変化します。

# 非ハミルトン系

非ハミルトン系の簡単な例として、摩擦のある調和振動子を考えましょう。

```math
\begin{align}
\dot{p} &= -q -p\\
\dot{q} &= p
\end{align}
```

速度場のdivergenceは

```math
\nabla \vec{\dot{z}} = \partial_p \dot{p} +   \partial_q \dot{q} = -1
```

です。したがって、ヤコビアンは

```math
J(t+h, t) = \mathrm{e}^{-h}
```

となります[^2]。これは、微小体積要素が指数関数的に減少していくことを表します。

[^2]: この系は厳密解を求めることができるため、そこからもヤコビアンを計算できますが、この公式を使った方が早いです。また、厳密解がある場合でも、公式を使ったほうがヤコビアンを容易に求めることができます。

先程の運動方程式には時間依存の保存量があります。

```math
H = \mathrm{e}^t (p^2 + pq + q^2)
```

この系はハミルトン系ではないので、この量はハミルトニアンではありませんが、$\dot{H} = 0$です。

この式を見ると、通常の調和振動子が、指数関数的にエネルギーを失っていく様子を表すことがわかります。

もともと、[以前の記事](https://qiita.com/kaityo256/items/805243f7c4740a7937de)に書いたように、ハミルトン系における運動方程式は、ハミルトニアンの勾配(gradient)に直行する速度場を与えていました。

雑な言い方をするならば、ハミルトンの運動方程式とは位相空間にある種の「回転」を引き起こし、ハミルトニアン(エネルギー)とはその回転半径のようなものです。単なる回転なので世界は大きくも小さくもなりません。

しかし、非ハミルトン系では、ヤコビアンが1ではないため、時間発展に伴って世界が大きくなったり小さくなったりします。摩擦のある調和振動子系では、ヤコビアンが常に1より小さいため、系は一方的に縮小していきます。つまり、世界が指数関数的に小さくなるため、時間に対して指数関数的に拡大してやるような量を考えれば時間不変量になります。時間不変量に$\mathrm{e}^t$のファクターがあるのは、ヤコビアンが$\mathrm{e}^{-h}$の形をしているからです。

# まとめ

運動方程式が引き起こす速度場のdivegenceと時間発展のヤコビアンの関係を論じました。ハミルトン系の場合には、

* 速度場のdivergenveが0になる(リュービル演算子のエルミート性)
* ヤコビアンが1になる(シンプレクティック写像、propagatorのユニタリ性)
* 位相空間の微小体積要素が保存される(リュービルの定理)

となりました。逆に、非ハミルトン系の場合には

* 速度場のdivergenveが0にならない(リュービル演算子の非エルミートに)
* ヤコビアンが1にならない(propagatorが非ユニタリに)
* 位相空間の微小体積要素が保存されない

となります。

分子動力学法において、ハミルトン系の数値積分にはシンプレクティック積分を使えば良いですが、非ハミルトン系をどのように数値積分すべきかは難しい問題です。例えば温度制御をすると、必ずリュービル演算子が非エルミートになることが証明できます。したがって、非ユニタリな時間発展を扱う必要があります。これについて様々な報告がありますが、私の知る限り、きれいな一般論はまだありません。

# 参考

1. [解析力学1, 2 (中村孔一、山本義隆著, 朝倉物理学大系)](https://www.amazon.co.jp/dp/4254136714)　
2. [解析力学の幾何学的側面](https://qiita.com/kaityo256/items/e9adf792210e8c022010) シンプレクティック変換について
3. [解析力学の幾何学的側面II](https://qiita.com/kaityo256/items/805243f7c4740a7937de) 多様体と流れ場について
2.  [Velocity Verlet法とシンプレクティック積分](http://qiita.com/kaityo256/items/fd5a6ff3fcf0eb7bc860) Velocity Verlet法がシンプレクティック積分になることの確認等
3. [Lie-Trotter公式の打切り誤差を調べる](http://qiita.com/kaityo256/items/b7e0568cad8b86c5c8ea) シンプレクティック積分の構築に使われるLie-Trotter公式の打切り誤差を確認
4. [時間反転対称性とシンプレクティック積分](http://qiita.com/kaityo256/items/a4968a8de7ed636a2e79) 
5. [Lie-Trotter公式における二次の対称分解](http://qiita.com/kaityo256/items/1af80746913f1f17006d) 分子動力学法で、おそらく最も使われている二次のシンプレクティック積分(二次の対称分解)の精度の確認
6. [シンプレクティック変換と運動方程式の関係について](http://qiita.com/kaityo256/items/0d3af05b19d3f472ca98) 時間発展がシンプレクティックであることと、運動方程式が満たすべき条件の関係について