アマチュア数学者の日記

とある大学で数学を学んでいます。専門は偏微分方程式です。高校野球、マラソン、カメラ、数学、etc...多趣味です。様々なことを書いていきます。

勾配(gradient)の極座標変換を求めたい(n次元)

あけましておめでとうございます。最近全く投稿していませんでした。

ついに友人から「投稿しないの?」という恐怖の催促をもらったので本気を出したいと思います。

タイトルにある通りgradientの極座標を求めてみます。もちろんn次元です。

なぜそんなものを求めることになったのか

以前から卒業研究で調和関数の性質を調べているのですが、ある教科書に調和関数はKelvin変換しても調和関数であるという興味深い定理がありました。

これの3次元場合についてセミナーで発表したところ、教授が興味を持ってしまい、

「一般次元でも証明してみたら?」

という恐怖のような一言を言いだしたのが事の始まりです。

ということでまずはラプラシアンのn極座標変換を求めるところからスタートしました。1度やったことがある人ならわかると思うのですが、2次元でもまぁめんどくさい計算です。3次元になると普通にやっても30分~1時間くらいかかるのではないでしょうか。とにかく面倒な計算なのです。それをn次元でやるというのですから、まぁヤバイ

しかしGoogle先生はなんでも答えてくれます。

すでに偉大な先人が計算済みでした。

wasan.hatenablog.com

ありがたいことに、非の打ち所がない証明が載っており、事なきを得ました。

しかし、、、

それを発表した日のセミナーで教授が

「ついでにgradientもやってみて♪どうなるかわかんないけど」

という発言により、gradientについても求める必要性が出てきました。そんな流れからn次元の極座標変換を求めることになったのです。

大学の図書館で探してみたのですが、どの文献にも載っていませんでした。そこで自分で計算することになったのです。

どのような方針で求めるか

ラプラシアンは2回微分でgradientは1回微分なのでラプラシアンよりは簡単に求められるような気がしますが、半分あってて、半分間違ってるといった感じです。ラプラシアンはスカラーですが、gradientはベクトルなので、計算が面倒になる場合があるためです。

数学でnが絡む証明はたいてい帰納法です。これは高校生の頃から口うるさく言われてきたことかと思います。今回もその基本にのっとり証明します。

n→n+1への変換の際には、円柱座標→極座標という流れを取ります。

準備

まずgradientの定義から確認します。gradientのことを通常gradとか\nabla と書きます。今回は\nabla に統一します。

\nabla := ( \frac{\partial }{ \partial x_1},\frac{\partial }{ \partial x_2},\frac{\partial }{\partial x_3}  , \ldots ,\frac{\partial }{\partial x_n} )

が定義になります。

次にn次元の極座標を書いてみます。

 \begin{cases} x_1= r \cosθ_1 \\ x_2= r \sinθ_1 \cosθ_2 \\ x_3= r \sinθ_1 \sinθ_2 \cosθ_3 \\ \vdots \\ x_{n-1}=r \sinθ_1 \sinθ_2... \cosθ_{n-1} \\ x_{n}=r \sinθ_1 \sinθ_2... \sinθ_{n-1} \end{cases}

となります。2次元のときは、

 \begin{cases} x_1= r \cosθ_1 \\ x_2= r \sinθ_1 \end{cases}

で、3次元のときは

 \begin{cases} x_1= r \cosθ_1 \\ x_2= r \sinθ_1 \cosθ_2 \\ x_3= r \sinθ_1 \sinθ_2 \end{cases}

です。3次元までは理系の方なら学習したと思います。

では、まず小さい次元の場合から計算してみましょう。

2次元の場合

\frac{\partial }{ \partial x_1} = \frac{\partial r }{ \partial x_1} \frac{\partial }{ \partial r } + \frac{\partial θ_1 }{ \partial x_1} \frac{\partial }{ \partial θ_1}

\frac{\partial }{ \partial x_2} = \frac{\partial r }{ \partial x_2} \frac{\partial }{ \partial r } + \frac{\partial θ_1 }{ \partial x_2} \frac{\partial }{ \partial θ_1}

なので実際に\frac{\partial r }{ \partial x_1},\frac{\partial θ_1 }{ \partial x_1},\frac{\partial r }{ \partial x_2}, \frac{\partial θ_1 }{ \partial x_2}を計算してみます。

計算方法は割愛します。詳しくはこちらを参考にしてください。

wasan.hatenablog.com

結論だけ書くと、

\nabla_2 = { \begin{pmatrix} \cosθ_1 & \frac{-\sinθ_1}{r} \\ \sinθ_1 & \frac{cosθ_1}{r} \end{pmatrix} } \left( \begin{array}{c} \frac{\partial }{ \partial r } \\ \frac{\partial }{ \partial θ_1} \\ \end{array} \right)

となります。

3次元の場合

こちらも計算は乗っていますので以下に任せます。

wasan.hatenablog.com

 

n次元のとき

一気にぶっ飛びます。

最初に書いたように一般形を予測し、これを帰納法により示します。

予想

\nabla_n = { \begin{pmatrix} \frac{\partial r }{ \partial x_1} & \ldots  & \frac{\partial θ_{n-1} }{ \partial x_1} \\ \vdots \\  \frac{\partial r }{ \partial x_n}   & \ldots  & \frac{\partial θ_{n-1} }{ \partial x_1} \end{pmatrix} } \left( \begin{array}{c}  \frac{\partial }{ \partial r } \\ \frac{\partial }{ \partial θ_1}\\ \vdots \\ \frac{\partial }{ \partial θ_{n-1}}\\ \end{array} \right) =
 (\vec{e_1}, \vec{e_2}, \cdots, \vec{e_n}) \left( \begin{array}{c} \frac{\partial }{ \partial r } \\ \frac{\partial }{ \partial θ_1}\\ \vdots \\ \frac{\partial }{ \partial θ_{n-1}} \\ \end{array} \right)  

と置きます。\vec{e_i}R^nの縦ベクトルです。\vec{e_i}の一般形を求めてみます。

\vec{e}=\left( \begin{array}{c}  r\cosθ_1 \\   r \sinθ_1 \cosθ_2 \\ r \sinθ_1 \sinθ_2 \cosθ_3 \\ \vdots \\ r \sinθ_1 \sinθ_2... \cosθ_{n-1} \\ r \sinθ_1 \sinθ_2... \sinθ_{n-1}\\ \end{array} \right)

とします。

このとき\vec{e_i}

\vec{e_i}=\begin{cases} \frac{\partial \vec{e} }{ \partial r }   (i=1) \\ \frac{1}{r^2 \sin^2θ_1 \cdots \sin^2θ_n}\frac{\partial \vec{e} }{ \partial θ_{i-1} }  (i≧2) \end{cases}

となります。

ただし、便宜上\sinθ_0 =1としました。

証明

n=2のとき

\vec{e}= \left( \begin{array}{c} r\cosθ_1 \\ r\sinθ_1 \end{array} \right) なので、

\vec{e_1} = \frac{\partial \vec{e} }{ \partial r } = \left( \begin{array}{c} \cosθ_1 \\ \sinθ_1 \end{array} \right)

\vec{e_2} = \frac{\partial \vec{e} }{ \partial θ_1 } = \left( \begin{array}{c} \frac{-\sinθ_1}{r} \\ \frac{cosθ_1}{r} \end{array} \right)

となり、成り立ちます。

nのとき成り立つとしてn+1のときを考える

\nabla_n = (\vec{e_1}, \vec{e_2}, \cdots, \vec{e_n}) \left( \begin{array}{c} \frac{\partial }{ \partial r } \\ \frac{\partial }{ \partial θ_1}\\ \vdots \\ \frac{\partial }{ \partial θ_{n-1}} \\ \end{array} \right) が成り立つと仮定します。\vec{e_i}は先ほど書いた通りです。

このときを考えます。

まず直交座標から円柱座標へ移します。

(x_1,\cdots,x_n,x_{n+1}) ↦ (x_1,ρ,θ_2,\cdots, θ_n)

このとき、

 \begin{cases} x_1=x_1\\ x_2= ρ \cosθ_2 \\ x_3= ρ \sinθ_2 \cosθ_3 \\ x_4= ρ \sinθ_2 \sinθ_3 \cosθ_4 \\ \vdots \\ x_{n}=ρ \sinθ_2 \sinθ_3... \cosθ_{n} \\ x_{n+1}=ρ \sinθ_1 \sinθ_2... \sinθ_{n} \end{cases}

そして各々の偏微分作用素を考えると、

 \begin{cases} \frac{\partial }{ \partial x_1}=\frac{\partial }{ \partial x_1} \\ \frac{\partial }{ \partial x_2} = \frac{\partial ρ }{ \partial x_2}\frac{\partial }{ \partial ρ} + \frac{\partial θ_2 }{ \partial x_2}\frac{\partial }{ \partial θ_2} \cdots + \frac{\partial θ_n }{ \partial x_2}\frac{\partial }{ \partial θ_n} \\ \vdots \\ \frac{\partial }{ \partial x_{n+1}} = \frac{\partial ρ }{ \partial x_{n+1}}\frac{\partial }{ \partial ρ} + \frac{\partial θ_2 }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n} \cdots + \frac{\partial θ_n }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n} \end{cases}

そして円柱座標から極座標に移します。問題になるのは行列の1番下の行と1番右の列です。すなわち、\vec{e_{n+1}}\frac{\partial }{ \partial x_{n+1}} を調べれば良いことがわかります。それ以外の成分は右に1列&1行シフトするだけなので変わりません。

次に、円柱座標から極座標へ変換します。
すなわち、

(x_1,ρ,θ_2,\ldots,θ_n) ↦(r,θ_1,θ_2,\ldots,θ_n)

r=\sqrt{x_1^2 + ρ^2} =\sqrt{x_1^2 + \ldots +x_{n+1}^2}

θ_1=\tan^{-1}\frac{ρ}{x_1}

を考えます。変数を2つ変換しただけなので、2次元のときと同じ結果が使えて、

 \frac{\partial  }{ \partial x_1} =\cosθ_1    \frac{\partial  }{ \partial r} + \frac{\sinθ_1}{r}   \frac{\partial  }{ \partial θ_1}

 \frac{\partial  }{ \partial ρ} =\sinθ_1    \frac{\partial  }{ \partial r} +\frac{\cosθ_1}{r}   \frac{\partial  }{ \partial θ_1}

これを

\frac{\partial }{ \partial x_{n+1}} = \frac{\partial ρ }{ \partial x_{n+1}}\frac{\partial }{ \partial ρ} + \frac{\partial θ_2 }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n} \cdots + \frac{\partial θ_n }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n}

に代入します。

\frac{\partial }{ \partial x_{n+1}} = \frac{\partial ρ }{ \partial x_{n+1}}(\sinθ_1    \frac{\partial  }{ \partial r} +\frac{\cosθ_1}{r}   \frac{\partial  }{ \partial θ_1}) + \cdots +\frac{\partial θ_n }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n}

 x_{n+1}=ρ \sinθ_2 \sinθ_3... \sinθ_{n}

だったので、

\frac{\partial ρ }{ \partial x_{n+1}}=\sinθ_1 \sinθ_2... \sinθ_{n}

これも上の式に代入すると、

\frac{\partial }{ \partial x_{n+1}} = \sinθ_2 \sinθ_3... \sinθ_{n}(\sinθ_1    \frac{\partial  }{ \partial r} +\frac{\cosθ_1}{r}   \frac{\partial  }{ \partial θ_1}) + \cdots +\frac{\partial θ_n }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n}

=\sinθ_2 \sinθ_3... \sinθ_{n}    \frac{\partial  }{ \partial r} +\frac{\cosθ_1 \sinθ_1 \sinθ_2... \sinθ_{n}}{r}   \frac{\partial  }{ \partial θ_1}+ \cdots +\frac{\partial θ_n }{ \partial x_{n+1}}\frac{\partial }{ \partial θ_n}

こうして計算した\nabla_n の表現行列の(n+1,1),(n+1,2)成分がいい感じになっています。

残りのn+1行目の成分に関してはほとんど明らかなので省略します。

さて、最後に\vec{e_{n+1}}の形を見ます。

極座標の置き方により、

θ_{n-1}に対して、

θ_{n-1}=\tan^{-1}\frac{x_{n+1}}{x_{n}}

が成り立っています。

\vec{e_{n+1}}の各成分はθ_nx_j,(j=1,2,\cdots,n+1)成分で微分したものでした。

j=1,2,\cdots,n-1のときまではθ_{n-1}x_jが含まれないので各々0になります。

以上よりj=n,n+1の場合のみを計算すればいいことがわかります。

θ_{n-1}=\tan^{-1}\frac{x_{n+1}}{x_{n}}

x_nで微分すると、

\frac{\partial θ_{n-1} }{ \partial x_{n}}=\frac{-(\frac{x_{n+1}}{x_n^2})}{1+(\frac{x_{n+1}}{x_n})^2}

=\frac{-x_{n+1}}{x_n^2+x_{n+1}^2}

=\frac{-r \sinθ_1 \sinθ_2... \sinθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \cos^2θ_{n-1}+ r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-1}}

=\frac{-r \sinθ_1 \sinθ_2... \sinθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-2} (\cos^2θ_{n-1}+ \sin^2θ_{n-1})}

=\frac{-r \sinθ_1 \sinθ_2... \sinθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-2} }

=\frac{-\sinθ_{n-1}}{r \sinθ_1 \sinθ_2... \sinθ_{n-2} }

x_nで微分すると、

\frac{\partial θ_{n-1} }{ \partial x_{n+1}}=\frac{(\frac{1}{x_n})}{1+(\frac{x_{n+1}}{x_n})^2}

=\frac{x_{n}}{x_n^2+x_{n+1}^2}

=\frac{r \sinθ_1 \sinθ_2... \cosθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \cos^2θ_{n-1}+ r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-1}}

=\frac{r \cosθ_1 \sinθ_2... \sinθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-2} (\cos^2θ_{n-1}+ \sin^2θ_{n-1})}

=\frac{r \cosθ_1 \sinθ_2... \sinθ_{n-1}}{r^2 \sin^2θ_1 \sin^2θ_2... \sin^2θ_{n-2} }

=\frac{\cosθ_{n-1}}{r \sinθ_1 \sinθ_2... \sinθ_{n-2} }

\vec{e_{n+1}} =\frac{1}{r^2 \sin^2θ_1 \cdots \sin^2θ_n}\frac{\partial \vec{e} }{ \partial θ_{n} }

以上により予想が正しかったことが示されました。



今までで一番長い証明でした。疲れたぜコノヤロー

次に知りたいこと

・この \nabla_nの内積を取ると最初に述べたラプラシアンになるのか調べたい。(ラプラシアンの結果はわかっていて割とそれっぽい形をしているので計算してみる価値はあると思う)

・この微分作用素を任意の関数fに作用させたときのノルム、すなわち || \nabla_n f ||
が知りたい。