学びのヒント by SLA

東北大生のための「学びのヒント」をSLAがお届けします。
理解が深まったり、学びがもっと面白くなる、そんな情報を発信していきます。

最新記事

2019/11/29 学習ポイント

変分法でラプラシアンを導出

電磁気学等でしばしば登場するラプラシアン\Delta \equiv \bm{\nabla}^2xyz直交座標系では

(1)   \begin{equation*} \Delta = \frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2} + \frac{\partial^2}{\partial z^2} \end{equation*}

という形をしていました。

このラプラシアン\Deltaの極座標系や円筒座標系での具体的な形を求めるのに、ナブラ\bm{\nabla}を2乗して求めるのは計算が結構大変です。(基底ベクトルを微分すると他の基底ベクトルに化けるので、項がたくさん出て計算が面倒です。)そこでここでは変分法を用いることで、少ない計算量で色々な座標系でのラプラシアンを求める方法を紹介します。ただし各座標系でのナブラ\bm{\nabla}の形は既知のものとします。ここで”変分法”というのを初めて聞いたという人もいる事でしょう。変分法は解析力学などで使われる数学の手法です。ここでは変分法の詳しい説明はしませんので、この方法は変分法を知っている人向けになります。

まず、少し解析力学のおさらいです。
解析力学では系のラグラジアンLを時間積分して作用Sを作り、その作用に最小作用の原理\delta S = 0を適応してその系の運動方程式を求めましたね。最小作用の原理の\delta Sは作用Sの変分という意味でした。

(2)   \begin{equation*} S = \int _{t_1} ^{t_2} L(q,\dot{q},t) dt \end{equation*}

この方法で作用Sが停留点を取るときのq(t)の様子(運動方程式)がわかるわけです。ここで作用Sq(t)の汎関数という意味でS[q(t)]と書かれます。

さて、汎関数としてS[q(t)]を使い変分原理を用いると運動方程式が求まりますが、変分原理を使うとポアッソン方程式\Delta f = \rhoが出てくるような汎関数T[f]を考えましょう。fは空間の各点各点で値が決まっている位置に対するスカラー関数です。少し天下り的になってしまいますが、

(3)   \begin{equation*} T[f] = \int \frac{1}{2} \left\{ (\bm{\nabla} f)^2 + \rho f \right\} dV  \end{equation*}

と汎関数T[f]をとれば、変分原理\delta T[f] = 0でポアッソン方程式が出てきます。
確認のためxyz直交座標系で試してみましょう。

変分によって

(4)   \begin{equation*} f \longrightarrow f + \delta \! f \end{equation*}

となる場合に、汎関数T[f]はどのような変化をするでしょうか。

(5)   \begin{equation*} \delta T[f] = \int \frac{1}{2} \left\{ \left(\bm{\nabla} (f + \delta \! f) \right) ^2 + \rho (f + \delta \! f) \right\} dV - \int \frac{1}{2} \left\{ (\bm{\nabla} f)^2 + \rho f \right\} dV \end{equation*}

2次の微小項は無視すると

(6)   \begin{equation*} \delta T[f] = \int \left\{ (\bm{\nabla} f)\cdot(\bm{\nabla} \delta \! f) + \rho \, \delta \! f \right\} dV  \end{equation*}

部分積分によって\delta \! fに掛っている\bm{\nabla}\bm{\nabla} fの方に移して、表面項は\delta \! fの境界条件の為に落ちるので

(7)   \begin{align*} \int \left\{ (\bm{\nabla} f)\cdot(\bm{\nabla} \delta \! f) + \rho \, \delta \! f \right\} dV &= \int \left\{ -(\bm{\nabla} ^2 f) \, \delta \! f + \rho \, \delta \! f \right\} dV\\ &= \int \delta \! f \left( -\Delta f + \rho \right) dV \end{align*}

ここで、変分原理によって任意の\delta \! fに対して\delta T[f] = 0が成り立つとすると、被積分関数の\delta \! fに掛けられている部分が空間中のどこでも0となり

(8)   \begin{equation*} \Delta f = \rho \end{equation*}

が出てきてくれました(xyz直交座標系でのポアッソン方程式)。この方法を極座標や円筒座標など他の座標系でやれば、それぞれの座標系でのポアッソン方程式が求まり、つまりラプラシアン\Deltaも分かるという仕組みです。

さて、それでは極座標でやってみましょう。
まず(3)式から(6)式まではxyz直交座標系のときと全く同じです。極座標系の場合ここから少し違います。というのは極座標系では微小体積要素dVdV = r^2 \sin \theta dr d\theta d\phiであるので、部分積分をするときにヤコビアンr^2 \sin \thetaが絡んでくるので注意しなくてはなりません。では(6)式からやってみると

(9)   \begin{align*} \delta T[f] &= \int \left\{ (\bm{\nabla} f)\cdot(\bm{\nabla} \delta \! f) + \rho \, \delta \! f \right\} dV \\ &= \int \left\{ (\bm{\nabla} f)\cdot(\bm{\nabla} \delta \! f) + \rho \, \delta \! f \right\} r^2 \sin \theta dr d\theta d\phi \end{align*}

ここで

(10)   \begin{equation*} \bm{\nabla} &= \bm{e}_r \frac{\partial}{\partial r} + \bm{e}_\theta \frac{1}{r} \frac{\partial}{\partial \theta} + \bm{e}_\phi \frac{1}{r \sin \theta} \frac{\partial}{\partial \phi} \equiv \bm{e}_r \partial _ r + \bm{e}_\theta \partial _ \theta + \bm{e}_\phi \partial _ \phi \end{equation*}

のように\partial_r,\partial_\theta,\partial_\phiを定義して使うと(ナブラ\bm{\nabla}のままの表記では、部分積分後の式を上手く表せないため\partial_r,\partial_\theta,\partial_\phiを導入している。なおここでの文字の定義の仕方は、普段よく使われる定義とは違うので気をつけてください。)

(11)   \begin{equation*} \delta T[f] = \int \left\{ (\partial_r f)(\partial_r \delta \! f) + (\partial_\theta f)(\partial_\theta \delta \! f) + (\partial_\phi f)(\partial_\phi \delta \! f) + \rho \, \delta \! f \right\} r^2 \sin \theta dr d\theta d\phi \end{equation*}

部分積分で表面項はやはり落ちる事とヤコビアンr^2 \sin \thetaがある事に注意し(ここの部分積分は良く考えないと間違いやすいので、要注意)

(12)   \begin{align*} \begin{split} \delta T[f] &= \int \biggl[ - \frac{1}{r^2 \sin \theta} \left\{ \partial_r \left( r^2 \sin \theta (\partial_r f) \right) \delta \! f + \partial_\theta\left(r^2 \sin \theta (\partial_\theta f) \right) \delta \! f \right. \\ &\quad + \left. \partial_\phi \left( r^2 \sin \theta (\partial_\phi f) \right) \delta \! f \right \} + \rho \, \delta \! f \biggr] r^2 \sin \theta dr d\theta d\phi\\ &= \int \delta \! f \biggl[ - \frac{1}{r^2 \sin \theta} \left\{ \partial_r \left( r^2 \sin \theta (\partial_r f) \right) + \partial_\theta\left(r^2 \sin \theta (\partial_\theta f) \right) \left. \\ &\quad \left. + \partial_\phi \left( r^2 \sin \theta (\partial_\phi f) \right) \right\} + \rho \biggr] r^2 \sin \theta dr d\theta d\phi \end{split} \end{align*}

先ほど同様、この式が任意の\delta \! fに対して\delta T[f] = 0が成り立つとすると、被積分関数の\delta \! fに掛けられている部分が空間中のどこでも0となり

(13)   \begin{equation*} \frac{1}{r^2 \sin \theta} \left\{ \partial_r \left( r^2 \sin \theta (\partial_r f) \right) + \partial_\theta\left(r^2 \sin \theta (\partial_\theta f) \right) + \partial_\phi \left( r^2 \sin \theta (\partial_\phi f) \right) \right\} = \rho  \end{equation*}

[極座標系でのポアッソン方程式]

が求まります。

したがって(13)式より、極座標系でのラプラシアン\Delta

(14)   \begin{align*} \begin{split} \Delta &= \frac{1}{r^2 \sin \theta} \left\{ \partial_r \left( r^2 \sin \theta \partial_r \right) + \partial_\theta\left(r^2 \sin \theta \partial_\theta \right) + \partial_\phi \left( r^2 \sin \theta \partial_\phi \right) \right\}\\[+10pt] &= \frac{1}{r^2 \sin \theta} \sum _{i=r , \theta , \phi} \partial_i (r^2 \sin \theta \partial_i)\\[+10pt] &= \frac{1}{r^2 \sin \theta} \biggl[ \frac{\partial}{\partial r} \left( r^2 \sin \theta \frac{\partial}{\partial r} \right) + \frac{1}{r} \frac{\partial}{\partial \theta} \left( r^2 \sin \theta \frac{1}{r} \frac{\partial}{\partial \theta} \right) \right. \\ &\quad \left. + \frac{1}{r \sin \theta} \frac{\partial}{\partial \phi} \left( r^2 \sin \theta \frac{1}{r \sin \theta} \frac{\partial}{\partial \phi} \right) \biggr]\\[+10pt] &=\frac{1}{r^2} \frac{\partial}{\partial r} r^2 \frac{\partial}{\partial r} + \frac{1}{r^2 \sin \theta} \frac{\partial}{\partial \theta} \sin \theta \frac{\partial}{\partial \theta} + \frac{1}{r^2 \sin ^2 \theta} \frac{\partial ^2}{\partial \phi ^2} \end{split} \end{align*}

ともとまります。どうですか、普通にナブラ\bm{\nabla}を2乗する求め方よりすっきりしているでしょ。

同様にやることで、円筒座標系やその他の座標系でのラプラシアンも比較的少ない計算量で求める事が出来ます。さらに初めに持ってくる汎関数を上手く持ってくれば、ラプラシアン以外の演算子を求める事もできます。このやり方は応用の幅が広いと思いますので、知っておくと役に立つ事があるかもしれません。

 

作成者:SLA