ラグランジュ形式では、一般化座標を自由に選べました。ハミルトン形式では位置 q と運動量 p が同じ立場で並んでいるので、2 つをまとめた取りかえ Q = Q(q, p)、P = P(q, p) も考えられます。
ただし、どんな取りかえでもよいわけではありません。新しい変数でも、あるハミルトニアン K について \dot Q = \partial K/\partial P、\dot P = -\partial K/\partial Q が成り立つ取りかえだけを、正準変換と呼びます。
図の上は、平面を角 \alpha だけ回す取りかえで、四角の形も面積も変わりません。これは正準変換です。下は Q = \lambda q、P = p と横だけを引き伸ばす取りかえで、\lambda = 2 まで伸ばすと、四角の面積は 0.19 から 0.38 に増えます。これは正準変換ではありません。
図の上の四角は \alpha を \pi/4 まで回しています。\alpha = \pi/2 まで回すと Q = -p、P = q となり、位置と運動量が入れかわります。
位相空間の面積が変わらないことは、正準変換であるための条件です。座標が 1 つのときは、面積を変えない取りかえはどれも正準変換になります。横を \lambda 倍して縦を 1/\lambda 倍する取りかえ Q = \lambda q、P = p/\lambda なら、面積は変わらず、正準変換です。
位置だけを取りかえる Q = Q(q) も、運動量を P = p/(dQ/dq) と取りかえれば正準変換です。ラグランジュ形式で一般化座標を自由に選べたのは、この特別な場合にあたります。
時間がたつことによる状態の移り変わりも正準変換です。位相空間の記事で見たリウビルの定理は、このことからも導けます。
取りかえが正準変換かどうかをそのつど確かめるかわりに、はじめから正準変換になるものだけを作る方法があります。それが母関数を使う方法です。
正準方程式は、作用 \int (p\dot q - H)\,dt を停留させる条件として導けました。新しい変数でも \int (P\dot Q - K)\,dt が同じ運動で停留すればよいので、2 つの被積分関数の差が、ある関数 F の時間微分になっていれば十分です。図の 1 行目がその式です。時間微分を積分すると両端の値の差になり、両端を固定して道をずらしても変わらないからです。
F を古い座標 q と新しい座標 Q の関数 F_1(q, Q, t) に選ぶと、1 行目の両辺で \dot q と \dot Q の係数を比べて、p = \partial F_1/\partial q、P = -\partial F_1/\partial Q が得られます。新しいハミルトニアンは K = H + \partial F_1/\partial t です。図の 2 行目から 4 行目です。
F_1 = qQ を選ぶと、p = Q、P = -q となります。位置と運動量を入れかえる取りかえも正準変換で、ハミルトン形式では、位置と運動量の区別がほとんどなくなります。
母関数には、どの変数を組み合わせるかで 4 つの形があります。F_2(q, P) では p = \partial F_2/\partial q、Q = \partial F_2/\partial P で、F_2 = qP を選ぶと何も変えない取りかえになります。4 つの形は、たがいにルジャンドル変換で移りあいます。
正準変換が役に立つのは、問題が簡単になる変数を選んだときです。ばね振り子で、新しい運動量 P が時間によらない定数になるように選んでみます。
図の左はもとの (q, p) の平面で、点は円の上を回ります。右は取りかえたあとの (Q, P) の平面で、P は一定のまま、Q だけが一定の速さで右へ進みます。右端に着くと左端に戻るのは、Q が角で、2\pi 進むともとの状態に戻るからです。
P は、もとの平面で円が囲む面積 J = \oint p\,dq を 2\pi で割った量で、E/\omega に等しくなります。J を作用変数、Q を角変数と呼びます。
図の運動は、質量とばね定数を 1 として振れ幅が 0.85 なので、円が囲む面積は J = \pi \times 0.85^2 = 2.27 です。これを 2\pi で割ると 0.361 になり、右の水平な線の高さと一致します。
エネルギーが決まれば円が決まり、円が決まれば囲む面積が決まります。エネルギーが保存するので、作用変数も時間によらず一定です。
座標が n 個ある運動でも、うまく変数を分けられるときは、作用変数 J_1, \dots, J_n と角変数をとれます。ボーアとゾンマーフェルトは 1910 年代に、作用変数が h の整数倍になるという条件で、水素原子のエネルギー準位を求めました。
母関数を F_1 = (m\omega q^2/2)\cot Q と選びます。偏微分すると p = m\omega q\cot Q、P = m\omega q^2/(2\sin^2 Q) となり、これを q と p について解くと、q = \sqrt{2P/(m\omega)}\sin Q、p = \sqrt{2m\omega P}\cos Q です。
これを H = p^2/2m + m\omega^2 q^2/2 に入れると、\sin^2 Q + \cos^2 Q = 1 によって K = \omega P になります。図の 3 行目です。P = E/\omega なので、K はエネルギーそのものです。
K は Q を含まないので、Q は循環座標で、\dot P = 0 です。さらに \dot Q = \partial K/\partial P = \omega なので、Q = \omega t + \delta と一定の速さで進みます。もとの変数に戻すと q = \sqrt{2E/(m\omega^2)}\sin(\omega t + \delta) で、単振動が得られます。
角変数の進む速さ \dot Q = \partial K/\partial P は、エネルギーを P で微分したものです。運動方程式を解かなくても、エネルギーを作用変数で表した式から振動数が求まります。
運動方程式を解いたというより、解が見える変数を選んだと言うほうが近いでしょう。作用変数と角変数は、断熱不変量や可積分系の記事でも使います。問題を簡単にする母関数をどう探すかを方程式にしたものが、次の記事のハミルトン–ヤコビ方程式です。