[本記事はPhysics Lab. Advent Calender2026の13日目の記事です。]
みなさんこんにちは。
あなたが理工系の学生なら、一度は極座標ラプラシアンを授業や演習で計算させられたことはあるのではないでしょうか?
めんどくさすぎる微分計算に辟易し、途中であきらめて答えを見る人が8割。
残り2割の計算を完遂した勇者でも、いざ答え合わせすると微妙に違ったりして、自分の計算ノートとにらめっこ。何とかミスを見つけて答を合わせる、という感じではないでしょうか。
そんな極座標のベクトル解析公式たちは、いたるところで物理に表れて我々を苦しめます。
普段は「公式なんてその場で導出すればいいんだよ~。覚える必要なんてない!」という強者たちも、極座標ラプラシアンに限っては公式を丸暗記している人がほとんどなのではないでしょうか?
(もしくは、こっそりネット検索しているかも…)
そんな極座標ラプラシアンですが、
「実は覚えなくても、その場で簡単に導出できちゃう」
と言ったら、どう思いますか?
「いやいや、もう極座標ラプラシアンは覚えちゃったよ」という人も、もしあらゆる座標系での勾配、回転、発散、ラプラシアンがその場で簡単に導出できちゃうと言ったら、さすがに興味湧いてきませんか?
今日は私がみなさんの救世主となるべく、微分形式とホッジスターを使ったベクトル解析の公式の導出方法を伝授します。
心して聞きたまえ。
通常、極座標の微分計算が面倒なのは、基底ベクトルそのもの($\mathbf{e}_r, \mathbf{e}_\theta$ など)が場所によって変化するため、微分のたびに「基底の微分」をケアしなければならないからです(連鎖律の嵐!)。
しかし、これから紹介する方法では、面倒な微分の処理は最後の最後の一瞬だけ。それまでは単なる「掛け算・割り算」として処理できます。
手順は以下の通りです。
これだけです。では、実際にやってみましょう。
まずは、お馴染みの3次元球面座標(極座標)の定義からスタートします。
$$
x = r \sin\theta \cos\phi, \quad y = r \sin\theta \sin\phi, \quad z = r \cos\theta
$$
これを微分して二乗和をとる(線素 $ds^2$ を求める)計算は、積分の変数変換などで何度もやっていると思います。結果はこうなりますね。
$$
ds^2 = dr^2 + r^2 d\theta^2 + r^2 \sin^2\theta d\phi^2
$$
ここからがポイントです。この式を「ピタゴラスの定理」のように見立てて、長さが1の正規直交基底(1-form) $\omega$ を定義します。つまり、
$$
ds^2 = (\omega^r)^2 + (\omega^\theta)^2 + (\omega^\phi)^2
$$
となるように、係数をルートに入れて $\omega$ を決めます。
これで準備の8割は完了です。ベクトル解析の計算はすべてこの $\omega$ をベースに行います。
次に、ホッジスター演算子 $*$ を導入します。難しそうな名前ですが、やることは「自分以外の残りの基底を掛ける」だけです。
3次元空間の基底は $(\omega^r, \omega^\theta, \omega^\phi)$ の3つセットです。これをクルクル回すイメージを持ってください。
「無」に対しては「全て」を返します。これが体積要素になります。
$$*(1) = \omega^r \wedge \omega^\theta \wedge \omega^\phi = r^2 \sin\theta (dr \wedge d\theta \wedge d\phi)$$
「1つ」に対しては「残り2つ」を返します(順列に注意!)。
「2つ」に対しては「残り1つ」を返します。
「全て」に対しては「無(スカラーの1)」を返します。
$$*(\omega^r \wedge \omega^\theta \wedge \omega^\phi) = 1$$
さあ、道具は揃いました。ここからは怒涛の計算ラッシュですが、全部ただの四則演算なのでリラックスしてついてきてください。
では、いよいよ実践です。
スカラー場を $f$、ベクトル場を $\mathbf{V} = V_r \mathbf{e}_r + V_\theta \mathbf{e}_\theta + V_\phi \mathbf{e}_\phi$ とします。
ベクトル場に対応する 1-form は以下のように書けます。
$$
\omega_V = V_r \omega^r + V_\theta \omega^\theta + V_\phi \omega^\phi
$$
勾配は、外微分 $d$ そのものです。
$\text{grad}=d$
これは瞬殺です。
$$
df = \frac{\partial f}{\partial r} dr + \frac{\partial f}{\partial \theta} d\theta + \frac{\partial f}{\partial \phi} d\phi
$$
これを正規直交基底 $\omega^i$ の係数として読み替えるために、無理やり変形します。
$$
df = \frac{\partial f}{\partial r} (\omega^r) + \frac{1}{r}\frac{\partial f}{\partial \theta} (r d\theta) + \frac{1}{r\sin\theta}\frac{\partial f}{\partial \phi} (r\sin\theta d\phi)
$$
$$
df = \frac{\partial f}{\partial r} \omega^r + \frac{1}{r}\frac{\partial f}{\partial \theta} \omega^\theta + \frac{1}{r\sin\theta}\frac{\partial f}{\partial \phi} \omega^\phi
$$
この $\omega^i$ の係数が、そのまま $(\text{grad} f)_i$ の成分です。
$$ \nabla f = \left( \frac{\partial f}{\partial r}, \frac{1}{r}\frac{\partial f}{\partial \theta}, \frac{1}{r\sin\theta}\frac{\partial f}{\partial \phi} \right) $$
ここまでは準備運動ですね。
さあ、ここから微分形式の真骨頂です。発散の定義は $* d *$ です。
$\text{div}=*d*$
先ほどのコラムの通り、「スターして(面にして)、微分して(湧き出しを測って)、もう一回スター(スカラーに戻す)」です。
ベクトル形式 $\omega_V$ に $*$ を作用させます。1-form は 2-form になります。
$$
*\omega_V = V_r *(\omega^r) + V_\theta *(\omega^\theta) + V_\phi *(\omega^\phi)
$$
$$
= V_r (\omega^\theta \wedge \omega^\phi) + V_\theta (\omega^\phi \wedge \omega^r) + V_\phi (\omega^r \wedge \omega^\theta)
$$
ここで具体的な $dr, d\theta, d\phi$ に戻します。係数が集まってくるのが見えますか?
$$
= V_r (r d\theta \wedge r \sin\theta d\phi) + V_\theta (r \sin\theta d\phi \wedge dr) + V_\phi (dr \wedge r d\theta)
$$
整理すると、
$$
*\omega_V = (r^2 \sin\theta V_r) d\theta \wedge d\phi + (r \sin\theta V_\theta) d\phi \wedge dr + (r V_\phi) dr \wedge d\theta
$$
これ全体を微分します。ここで重要なルール!
「$d\theta \wedge d\phi$ の項には、$dr$ の微分しか効かない」。
なぜなら、$d\theta$ や $d\phi$ で微分しても、$d\theta \wedge d\theta = 0$ となって消えてしまうからです。
つまり、偏微分 $\frac{\partial}{\partial r}$ などを係数の前にポンと置くだけでいいのです!
$$
d(*\omega_V) = \left[ \frac{\partial}{\partial r}(r^2 \sin\theta V_r) \right] dr \wedge d\theta \wedge d\phi
+ \left[ \frac{\partial}{\partial \theta}(r \sin\theta V_\theta) \right] d\theta \wedge d\phi \wedge dr
+ \left[ \frac{\partial}{\partial \phi}(r V_\phi) \right] d\phi \wedge dr \wedge d\theta
$$
すべての項が $dr \wedge d\theta \wedge d\phi$ に比例しています(順番を入れ替えると符号が変わることに注意しても、ここはすべてプラスで揃います)。まとめましょう。
$$
d(*\omega_V) = \left[ \frac{\partial}{\partial r}(r^2 \sin\theta V_r) + \frac{\partial}{\partial \theta}(r \sin\theta V_\theta) + \frac{\partial}{\partial \phi}(r V_\phi) \right] dr \wedge d\theta \wedge d\phi
$$
最後に、体積形式 $dr \wedge d\theta \wedge d\phi$ をスカラーに戻します。
先ほどの定義 $*(1) = r^2 \sin\theta (dr \wedge d\theta \wedge d\phi)$ の逆演算なので、
$$
*(dr \wedge d\theta \wedge d\phi) = \frac{1}{r^2 \sin\theta}
$$
です。つまり、全体の係数を $r^2 \sin\theta$ で割れば終了!
$$
\text{div} \mathbf{V} = \frac{1}{r^2 \sin\theta} \left[ \frac{\partial (r^2 \sin\theta V_r)}{\partial r} + \frac{\partial (r \sin\theta V_\theta)}{\partial \theta} + \frac{\partial (r V_\phi)}{\partial \phi} \right]
$$
$\theta$ や $\phi$ に依存しない係数を微分の外に出して整理すれば、教科書のあの式です。
$$ \text{div} \mathbf{V} = \frac{1}{r^2}\frac{\partial (r^2 V_r)}{\partial r} + \frac{1}{r\sin\theta}\frac{\partial (\sin\theta V_\theta)}{\partial \theta} + \frac{1}{r\sin\theta}\frac{\partial V_\phi}{\partial \phi} $$
次の計算に入る前に、少しだけ「ココロ」の話をしましょう。
「なんで $d$ だったり $*d*$ だったりするの?」と不思議に思いませんか?実はこれ、微分形式の「次元」を考えれば当然の帰結なのです。
微分形式の世界では、外微分 $d$ は「次数を $k$ から $k+1$ に上げる」操作です。
スカラー場 (0-form) の変化率を知りたい。そのまま $d$ で微分すればベクトルっぽいもの (1-form) になります。だから単純に$d$。
ここが面白いところです。発散 (div) は、本質的に「微小体積からどれくらい湧き出したか」を測る量なので、外微分 $d$ をすることで最終的には3-form(体積) への世界へ行きたいのです。
しかし、スタート地点のベクトル場 $\mathbf{V}$ は 1-form です。そこで、以下のようなステップを踏みます。
ここまで来れば、極座標ラプラシアンなんて敵ではありません。
ラプラシアンは $\text{div}(\text{grad} f)$ です。
$\Delta = \text{div}(\text{grad})=*d*d$
つまり、①で作った $\text{grad} f$ のベクトル成分を、さっき苦労して作った②の $\text{div}$ の式の $V_r, V_\theta, V_\phi$ に代入するだけです。
代入する成分(①の結果):
$$ \Delta f = \frac{1}{r^2}\frac{\partial}{\partial r}\left(r^2 \frac{\partial f}{\partial r}\right) + \frac{1}{r^2 \sin\theta}\frac{\partial}{\partial \theta}\left(\sin\theta \frac{\partial f}{\partial \theta}\right) + \frac{1}{r^2 \sin^2\theta}\frac{\partial^2 f}{\partial \phi^2} $$
完成です!!
あの長ったらしい式が、計算用紙数行で導出できました。
最後に、一番面倒くさそうな回転もやってみましょう。定義は $* d$ です。
$\text{rot}=*d$
今度は手加減なしで、全成分を一気に計算しますよ!
$$ \omega_V = V_r dr + (r V_\theta) d\theta + (r \sin\theta V_\phi) d\phi $$
全項を微分します。$d(A) \wedge dr$ のような形になりますが、同じ成分同士のウェッジ積 ($dr \wedge dr$など) は消えることに注意して展開します。
$$d(V_r) \wedge dr = \left( \frac{\partial V_r}{\partial \theta} d\theta + \frac{\partial V_r}{\partial \phi} d\phi \right) \wedge dr = -\frac{\partial V_r}{\partial \theta} dr \wedge d\theta - \frac{\partial V_r}{\partial \phi} d\phi \wedge dr$$
(順番を入れ替えて見やすくしています)
$$d(r V_\theta) \wedge d\theta = \left( \frac{\partial (r V_\theta)}{\partial r} dr + \frac{\partial (r V_\theta)}{\partial \phi} d\phi \right) \wedge d\theta = \frac{\partial (r V_\theta)}{\partial r} dr \wedge d\theta - \frac{\partial (r V_\theta)}{\partial \phi} d\theta \wedge d\phi$$
$$d(r \sin\theta V_\phi) \wedge d\phi = \left( \frac{\partial (r \sin\theta V_\phi)}{\partial r} dr + \frac{\partial (r \sin\theta V_\phi)}{\partial \theta} d\theta \right) \wedge d\phi = \frac{\partial (r \sin\theta V_\phi)}{\partial r} dr \wedge d\phi + \frac{\partial (r \sin\theta V_\phi)}{\partial \theta} d\theta \wedge d\phi$$
これらを $dr \wedge d\theta$ などの成分ごとにまとめます。
$$
d\omega_V = \left( \frac{\partial (r \sin\theta V_\phi)}{\partial \theta} - \frac{\partial (r V_\theta)}{\partial \phi} \right) d\theta \wedge d\phi
+ \left( \frac{\partial V_r}{\partial \phi} - \frac{\partial (r \sin\theta V_\phi)}{\partial r} \right) d\phi \wedge dr
+ \left( \frac{\partial (r V_\theta)}{\partial r} - \frac{\partial V_r}{\partial \theta} \right) dr \wedge d\theta
$$
ここからベクトルに戻します。それぞれの2-formに対応する1-form(基底)を思い出しましょう。
これらをまとめると、回転の公式が一丁上がりです。
$$ \text{rot} \mathbf{V} = \left( \frac{1}{r \sin\theta} \left[ \frac{\partial (\sin\theta V_\phi)}{\partial \theta} - \frac{\partial V_\theta}{\partial \phi} \right] \mathbf{e}_r + \frac{1}{r} \left[ \frac{1}{\sin\theta}\frac{\partial V_r}{\partial \phi} - \frac{\partial (r V_\phi)}{\partial r} \right] \mathbf{e}_\theta + \frac{1}{r} \left[ \frac{\partial (r V_\theta)}{\partial r} - \frac{\partial V_r}{\partial \theta} \right] \mathbf{e}_\phi \right) $$
どうですか? 行列式を使って覚える方法もありますが、この「導出のストーリー」を知っていれば、いつでも自分で作り出せます。
いかがでしたか?
この方法の最大のメリットは、「微分計算」と「座標の幾何学的な性質(計量)」を完全に分離できる点にあります。
最後に、理解度チェックとして「回転放物面座標」でのラプラシアンを求めてみましょう。
座標定義は以下の通りです。
$$
x=\xi\eta \cos\phi, \quad y=\xi\eta \sin\phi, \quad z=\frac{1}{2}(\xi^2-\eta^2)
$$
ヒント:
まず線素 $ds^2$ を計算すると、以下のようになります。
$$
ds^2 = (\xi^2 + \eta^2)(d\xi^2 + d\eta^2) + \xi^2 \eta^2 d\phi^2
$$
ここから $\omega^\xi, \omega^\eta, \omega^\phi$ を定義して、上の手順通りに $\text{div}(\text{grad} f)$ を計算してみてください。
普通の偏微分でやろうとすると地獄を見ますが、今回の方法なら5分で終わるはずです!
それでは、良き物理ライフを!