2次元の座標と方向微分

$\def\intdx{\opcol{\int \mathrm dx}}\def\E{\mathrm e}\def\I{\mathrm i}\definecolor{opcol}{RGB}{149,139,0}\definecolor{hai}{RGB}{137,137,137}\definecolor{tcol}{RGB}{166,54,109}\definecolor{kuro}{RGB}{0,0,0}\definecolor{xcol}{RGB}{169,103,49}\def\opcol#1{{\color{opcol}#1}}\def\ddx{\opcol{{\mathrm d\over \mathrm dx}}}\def\ddt{\opcol{{\mathrm d\over \mathrm dt}}}\def\xcol#1{{\color{xcol}#1}}\definecolor{ycol}{RGB}{217,61,137}\def\ycol#1{{\color{ycol}#1}}\def\haiiro#1{{\color{hai}#1}}\def\kuro#1{{\color{kuro}#1}}\def\kakko#1{\haiiro{\left(\kuro{#1}\right)}}\def\coldx{{\color{xcol}\mathrm dx}}\def\Odr{{\cal O}}\definecolor{ncol}{RGB}{217,51,43}\def\ncol#1{{\color{ncol}#1}}\definecolor{zcol}{RGB}{196,77,132}\def\zcol#1{{\color{zcol}#1}}\definecolor{thetacol}{RGB}{230,0,39}\def\thetacol#1{{\color{thetacol}#1}}\def\diff{\mathrm d}\def\kidb{\opcol{\mathrm db}}\def\kidx{\opcol{\mathrm dx}}\def\coldy{\ycol{\mathrm dy}}\def\coldtheta{\thetacol{\mathrm d\theta}}\def\ddtheta{\opcol{{\mathrm d\over\mathrm d\theta}}}\def\tcol#1{{\color{tcol}#1}}\def\coldt{\tcol{\mathrm dt}}\def\kidtheta{\opcol{\mathrm d\theta}}\def\dtwodx{\opcol{\diff^2\over\diff x^2}}\def\kokode#1{{↓#1}}\def\goverbrace{\overbrace}\def\coldz{\zcol{\mathrm dz}}\def\kidt{\opcol{\mathrm dt}}\definecolor{rcol}{RGB}{206,114,108}\def\rcol#1{{\color{rcol}#1}}\def\coldtwox{\xcol{\mathrm d^2x}}\def\PDC#1#2#3{{\opcol{\left(\opcol{{\partial \kuro{#1}\over \partial #2}}\right)}}_{#3}}\def\PDIC#1#2#3{{\opcol{\left(\opcol{\partial \over \partial #2}\kuro{#1}\right)}}_{#3}}\def\PD#1#2{{\opcol{\partial \kuro{#1}\over \partial #2}}}\def\PPDC#1#2#3{{\opcol{\left(\opcol{\partial^2 \kuro{#1}\over \partial #2^2}\right)}}_{#3}}\def\PPDD#1#2#3{{\opcol{{\partial^2 \kuro{#1}\over \partial #2\partial #3}}}}\def\PPD#1#2{{\opcol{{\partial^2 \kuro{#1}\over \partial #2^2}}}}\def\kidy{\opcol{\diff y}}\def\ve{\vec{\mathbf e}}\def\colvecx{\xcol{\vec x}}\definecolor{usuopcolor}{RGB}{237,234,203}\def\usuopcol#1{\color{usuopcolor}#1}\def\vgrad#1{{\usuopcol{\overrightarrow{\opcol{\rm grad}~\kuro{#1}}}}}$

2次元の座標と方向微分

2次元の座標

 まず、平面上を考えよう。平面上の位置は、二つの座標によって表現できる。

 座標とは位置を表現するための数で、よく使われるのは右のように場所を原点からその場所に引っ張った矢印であるベクトル(位置ベクトル)を$\colvecx=\xcol{x}\ve_x+\ycol{y}\ve_y$のように表現したときの$\xcol{x}$と$\ycol{y}$である。図に示したように、$\xcol{x}$軸方向を向いた単位ベクトル(長さが1のベクトルのこと)を$\ve_x$、$\ycol{y}$軸方向を向いた単位ベクトルを$\ve_y$と書いている。


 直交座標における「$\xcol{x},\ycol{y},\zcol{z}$方向を向いた単位ベクトル」の表現方法としては、他に、${\mathbf e}_x,{\mathbf e}_y,{\mathbf e}_z$(矢印をつけない)、${\mathbf i},{\mathbf j},{\mathbf k}$や、$\hat {\mathbf x},\hat {\mathbf y},\hat {\mathbf z}$(ハット$\hat {~}$をつける)などがある。記号が違っても中身は変わらない。


 位置ベクトルは$\colvecx=\xcol{x}\ve_x+\ycol{y}\ve_y$のように書けるが、成分を並べて$(\xcol{x},\ycol{y})$と書いても位置を表現できる。それぞれの点に応じて一つの数が決まる対応関係がある場合、その対応関係すなわち関数を$f\kakko{\xcol{x},\ycol{y}}$、または$f\kakko{\!\colvecx\!}$と書く$f\kakko{\zcol{\vec x}}$と書いたからといって、関数$f$がベクトルになったわけではない。$f\kakko{\!\colvecx\!}$は「ベクトル$\colvecx$を一個決めると数$f\kakko{\zcol{\vec x}}$が決まる」という関係である。

 2次元の位置を表現するのによく使われるのは直交座標(デカルト座標)で、上で述べた二つの座標$\xcol{x},\ycol{y}$を使って位置を表現する。もう一つよく使われるのが極座標で、これは原点からの距離$\rcol{r}=\sqrt{\xcol{x}^2+\ycol{y}^2}$と、どの方向に原点から離れているかを意味する$\thetacol{\theta}$で位置を表現するその意味からして、$\rcol{r}w=0$(原点)では座標$\thetacol{\theta}$は無意味になることに注意。

 図からわかるように極座標と直交座標には以下のような関係がある。 \begin{equation} \begin{array}{l} \xcol{x}=\rcol{r}\cos \thetacol{\theta},\ycol{y}=\rcol{r}\sin \thetacol{\theta},\\[2mm] \rcol{r}=\sqrt{\xcol{x}^2+\ycol{y}^2},\\ \cos\thetacol{\theta}={\xcol{x}\over \sqrt{\xcol{x}^2+\ycol{y}^2}},\sin\thetacol{\theta}={\ycol{y}\over \sqrt{\xcol{x}^2+\ycol{y}^2}} \end{array} \end{equation}

 $\xcol{x},\ycol{y}$はどちらも実数全体$-\infty$から$\infty$が定義域だが、極座標では$0\leq \rcol{r}<\infty$(0以上の数のみ)と$0\leq\thetacol{\theta}<2\pi$となる。$\thetacol{\theta}<2\pi$にしたのは$\thetacol{\theta}=2\pi$にあたる点は$\thetacol{\theta}=0$と同じ点であるからだが、座標に重複を許すならば$-\infty\leq\thetacol{\theta}<\infty$(定義域は実数全体)としてもよい。その場合の$\thetacol{\theta}$という座標は「$2\pi$の整数倍の違いは同じ点を示す」つまり「$\thetacol{\theta}$と$\thetacol{\theta}+2n\pi$($n$は整数)は同一点」という周期性を持つことに注意しなくてはいけない。

 直交座標の$\ve_x,\ve_y$同様、極座標でも$\rcol{r}$方向($\rcol{r}$が増加する方向)の単位ベクトル、$\thetacol{\theta}$方向($\thetacol{\theta}$が増加する方向)の単位ベクトルを考えて、これを$\ve_r,\ve_\theta$と書く(${\bf \hat r},{\bf \hat \theta}$と書いている本もある)。図に表したように(そして、その定義から当然そうなるべく)、$\ve_r,\ve_\theta$は場所によって違う方向を向く原点においては、$\ve_r,\ve_\theta$ともに定義できない。この意味で、原点は極座標の「特異点」である。。具体的に言えば$\thetacol{\theta}$によって違う方向を向くので、$\thetacol{\theta}$の関数座標$\thetacol{\theta}$を決めるとベクトルが一つ決まる。数→ベクトルという関数。であると考えれば$\ve_r\kakko{\thetacol{\theta}},\ve_\theta\kakko{\thetacol{\theta}}$と書くべきである(しかししばしば省略する)。

 下の図からわかるように、$\ve_r$は$\xcol{x}$成分が$\cos\thetacol{\theta}$、$\ycol{y}$成分が$\sin\thetacol{\theta}$なので、

\begin{equation} \ve_r=\cos\thetacol{\theta}\ve_x+\sin\thetacol{\theta}\ve_y \end{equation} となる。同様に$\ve_\theta$は$\xcol{x}$成分が$-\sin\thetacol{\theta}$で$\ycol{y}$成分が$\cos\thetacol{\theta}$となり \begin{equation} \ve_\theta=-\sin \thetacol{\theta}\ve_x+\cos\thetacol{\theta}\ve_y \end{equation} と書ける。この二つのベクトルは直交する($\ve_r\cdot\ve_\theta=0$)。以上がどのような角度$\thetacol{\theta}$のときでも正しいことは、図をたくさん描いて確認して欲しい。

 ところで上の式にある$\begin{array}{cc}\cos\theta&\sin\theta\\-\sin\theta&\cos\theta\end{array}$という並びには見覚えがあるはず。

 なお、極座標の「$\rcol{r}$方向」と「$\thetacol{\theta}$方向」も直交はしている。「直交座標」という言葉を「座標の方向が直交している座標系」と捉えるならば、極座標も``直交座標''だということになる。本書では「直交座標」は$(\xcol{x},\ycol{y})$を使う座標系(デカルト座標系)の名前として使うことにして、「座標の方向が直交している座標系」は「直交曲線座標」と呼ぶことにする。他の本を読むときには注意すること。


 2次元平面上における位置ベクトルは \begin{equation} \overbrace{\colvecx=\xcol{x}\ve_x +\ycol{y}\ve_y}^{直交座標} =\goverbrace{\rcol{r}\ve_r\kakko{\thetacol{\theta}}}^{極座標}\label{ichivec} \end{equation} のように表現される。直交座標では「原点から$\ve_x$の方向に$\xcol{x}$移動し、次に$\ve_y$の方向に$\ycol{y}$移動する」と考えると$\xcol{x}\ve_x +\ycol{y}\ve_y$となる。極座標では$\ve_r\kakko{\thetacol{\theta}}$の方向に$\rcol{r}$だけ移動する。

 極座標の位置ベクトルは$\colvecx=\rcol{r}\ve_r\kakko{\thetacol{\theta}}$となり$\ve_\theta$は出てこない。この式はしばしば省略されて$\colvecx=\rcol{r}\ve_r$と書かれる本書でも多くの場面で省略記法の方を使う。が、$\ve_r\kakko{\thetacol{\theta}}$は(たとえ省略して$\ve_r$と書かれていようと)$\thetacol{\theta}$に依存しているのだから、$\colvecx$が$\thetacol{\theta}$に依存していないわけではない。

 直交座標と極座標の二つの表現が等しいことは、$\ve_r=\cos \thetacol{\theta}\ve_x+\sin\thetacol{\theta}\ve_y$を代入して \begin{equation} \rcol{r}\overbrace{\left(\cos \thetacol{\theta}\ve_x+\sin\thetacol{\theta}\ve_y\right)}^{\ve_r} =\underbrace{\rcol{r}\cos\thetacol{\theta}}_{\xcol{x}}\ve_x+\underbrace{\rcol{r}\sin\thetacol{\theta}}_{\ycol{y}}\ve_y \end{equation} のように計算して確認することもできる。

 下のグラフは、単位ベクトル$\vec{\mathbf e}_x,\vec{\mathbf e}_y,\vec{\mathbf e}_r,\vec{\mathbf e}_\theta$を表示するものである。は動かすことができるので、動かしてそれぞれのベクトルの変化の様子を見よ。

方向微分とgrad

2次元の方向微分

 多変数関数のもっともよく出てくる例は「2次元(面)上や3次元(立体)内の場所に依存する関数」である。そこでこの節ではまず$\xcol{x},\ycol{y}$という2次元平面上の関数とその微分について考える。

 まずは$\xcol{x},\ycol{y}$という2変数の「座標」の関数の場合で話をする。$f\kakko{\xcol{x},\ycol{y}}$の「微係数」は$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}$と$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}$の二つがあった。この二つは「$\xcol{x}$方向に移動した場合」「$\ycol{y}$方向に移動した場合」の微小変化の微分係数であった。

 微分は「独立変数の変化に対する従属変数の変化の割合」なのだから、独立変数の変化のさせ方として「斜めに移動した場合」を考えて微分を行ってもよいではないか、と考えるのは当然である。

 そこで、図のように傾いた方向に$\tcol{a}$だけ動いた場合の変化を考えよう。

 つまり、$\xcol{\Delta x}=\tcol{a}\cos\alpha,\ycol{\Delta y}=\tcol{a}\sin \alpha$と選ぶわけである。こうしておいて$f$の変化量を計算したのち、結果を移動量(今の場合$\tcol{a}$)で割ってから極限を取ると、 \begin{equation} \lim_{a\to0}{ f\kakko{\xcol{x}+ \goverbrace{\tcol{a}\cos\alpha}^{\xcol{\Delta x}},\ycol{y}+\goverbrace{\tcol{a}\sin\alpha}^{\ycol{\Delta y}}}-f\kakko{\xcol{x},\ycol{y}}\over \tcol{a} } =\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}} \cos\alpha +\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}} \sin\alpha\label{houkoubibun} \end{equation} となる。この式は$\xcol{x}$軸と角度$\alpha$を持った方向に移動したときの変化の割合を示すもので、「方向微分」と呼ぶ。$\alpha=0$なら$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}$($\alpha={\pi\over 2}$なら、$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}$)になる。

 2次元ベクトルの内積の定義$\vec A\cdot\vec B=A_xB_x+A_yB_y$を思い出すと、この式は二つのベクトル$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}\ve_x+\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}\ve_y$$\ve_\alpha=\cos \alpha\ve_x+\sin \alpha\ve_y$の内積である、とも言える。

 このベクトル$\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}\ve_x+\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}\ve_y$は今後もお世話になるので、名前をつけよう。「$f$の勾配(gradient)」と呼び、「$\vgrad{f}$」普通の本では矢印はつけずに${\rm grad}~f$のように書くことにする。$\sin \theta$が$\sin$と$\theta$に分離できないように、$\vgrad{f}$も$\opcol{\rm grad}$と$f$には分離できない。$\vgrad{}$だけでは(後に微分される相手がなければ)意味がない。と表す。

 ←この交通標識は「勾配0.1」の印。

 定義は以下の通りである。


gradient(勾配)の定義

\begin{equation} \vgrad{f\kakko{\xcol{x},\ycol{y}}}=\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}\ve_x + \PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}\ve_y\label{defgrad} \end{equation}


 この計算を $$ \PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}}\ve_x + \PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}}\ve_y=\underbrace{\left(\ve_x\PD{}{\xcol{x}} + \ve_y\PD{}{\ycol{y}}\right)}_{演算子}\underbrace{f\kakko{\xcol{x},\ycol{y}}}_{関数} $$ のように分解し、演算子の部分を以下のように定義する記号$\nabla$は「ナブラ」と読む(ベクトル記号は付けない場合も多い)。。$\vgrad{f}$はこの記号を使って$\opcol{\vec \nabla} f$と表現することができる。


$\opcol{\vec \nabla}$の定義

\begin{equation} \opcol{\vec\nabla} =\ve_x\PD{}{\xcol{x}} + \ve_y\PD{}{\ycol{y}}\label{chokunabla} \end{equation}


 $\opcol{\vec \nabla}$はこれだけでは値の決まらない式であることに注意。「演算子$\opcol{\vec \nabla}$」を$f\kakko{\xcol{x},\ycol{y}}$に掛けたものが grad であり、これはベクトルの値を持っている。

 「grad」は「グラディエント」と読む。$\vgrad{f}$を知れば、欲しい方向の単位ベクトルとの内積を取ることによって、全ての方向の偏微分係数がわかる。方向微分の大きさである$\vgrad{f}\cdot\ve_\alpha$は$\alpha$の変化により \begin{equation} -\left| \vgrad{f} \right| \leq \vgrad{f}\cdot\ve_\alpha \leq \left| \vgrad{f} \right| \end{equation} の範囲で変化する(長くなるので$\kakko{\xcol{x},\ycol{y}}$等を省略した)内積$\vec a\cdot\vec b$の値は$-|\vec a||\vec b|\leq\vec a\cdot\vec b\leq \vec a\cdot \vec b$の範囲であり、今の場合の$\vec b$にあたる$\left(\cos \alpha,\sin \alpha\right)$の長さは1である。

 下のような二つの特別な場合を考えよう。

 方向微分が0になる場合の$\left(\cos \alpha,\sin \alpha\right)$と、方向微分が最大となる場合の$\left(\cos \alpha,\sin \alpha\right)$は直交している。山の斜面に立ったとき「傾きがない方向(等高線に沿って移動する方向)」と「傾きが最大の方向(山を登る方向)」は常に直交している、ということになる。

 たとえば前に考えた$f\kakko{\xcol{x},\ycol{y}}=\sqrt{\xcol{x}^2+\ycol{y}^2}$という関数の場合、偏微分係数の作るベクトル$\vgrad{f\kakko{\xcol{x},\ycol{y}}}$は \begin{equation} \begin{array}{rl} \left(\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}},\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}} \right) =\left( {\xcol{x}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } , {\ycol{y}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } \right) \end{array} \end{equation} である。

 図の黒矢印がこの偏微分係数のベクトル(各点ごとに違う方向を向く)でその長さは$\sqrt{\left({\xcol{x}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } \right)^2+\left({\ycol{y}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } \right)^2 }=1$になる。

 これに垂直なベクトルを白矢印で示した。平面上の90度$\left({\pi\over 2}{\rm rad}\right)$回転は$\xcol{x}$成分を$\ycol{y}$成分に($\ycol{y}$成分を$\xcol{x}$成分$\times(-1)$に)すればよいから、白矢印のベクトル表現は $$ \left(-\PDC{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}{\xcol{x}},\PDC{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}{\ycol{y}} \right)= \left( {-\ycol{y}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } , {\xcol{x}\over\sqrt{\xcol{x}^2+\ycol{y}^2} } \right) $$ である「$\xcol{x}$成分は$\ycol{y}$微分$\times(-1)$、$\ycol{y}$成分は$\xcol{x}$微分」というベクトル$-\PD{f}{\ycol{y}}\ve_x+\PD{f}{\xcol{x}}\ve_x$が「$f\kakko{\xcol{x},\ycol{y}}$を一定にする方向を表す」ということは覚えておくといつか役立つかもしれない。解析力学の正準方程式の右辺などがこの形になっている。。このベクトルは「$\sqrt{\xcol{x}^2+\ycol{y}^2}$の微分が0になる方向」すなわち「$\sqrt{\xcol{x}^2+\ycol{y}^2}$が変化しない方向」を向く($\sqrt{\xcol{x}^2+\ycol{y}^2}$が原点からの距離であることを思えば自明)。

 下のグラフは、関数$y=ax^2+by^2$とそのgradを描くものである。は動かすことができるので、動かしてそれぞれのベクトルの変化の様子を見よ。特に、
  • $\vgrad{f}$と等高線が垂直であること
  • 等高線の間隔が広いところでは、$\vgrad{f}$が長い(微係数が大きい)こと
などを確認しよう。

倍率=0.2

a=1.0

b=1.0

 倍率はgradの→の大きさなので、見やすいように調節すること。パラメータa,bも変更できる。

 $\ve_r=(\cos \thetacol{\theta},\sin \thetacol{\theta})$であり、直交する$\ve_\theta$は$(-\sin \thetacol{\theta},\cos \thetacol{\theta})$である($\ve_r=\cos\thetacol{\theta}\ve_x+\sin\thetacol{\theta}\ve_y,\ve_\theta=-\sin\thetacol{\theta}\ve_x+\cos\thetacol{\theta}\ve_y$と書いても同じこと)。よって、$\rcol{r}$方向の偏微分はそれぞれ \begin{equation} \ve_r\cdot(\vgrad{f})= \cos \thetacol{\theta}\PD{f\kakko{\xcol{x},\ycol{y}}}{\xcol{x}}+\sin \thetacol{\theta}\PD{f\kakko{\xcol{x},\ycol{y}}}{\ycol{y}}\label{rhoukou} \end{equation} となるが、これは $$ \PD{f}{\rcol{r}}=\PD{f}{\xcol{x}}\underbrace{\PD{\xcol{x}}{\rcol{r}}}_{\cos\thetacol{\theta}}+\PD{f}{\ycol{y}}\underbrace{\PD{\ycol{x}}{\rcol{r}}}_{\sin\thetacol{\theta}} $$ という「偏微分の連鎖律」だと考えると、$\PD{f}{\rcol{r}}$に一致する。

 ではθ微分の方は???というところからは来週やろう。

受講者の感想・コメント

 青字は受講者からの声、赤字は前野よりの返答です。

他の授業でもgradについては聞いていたが、やっとわかった(この感想多数)。
大事なことなのでいろんな授業でやってます(そして、これからもバンバン使います)。

$$ \ve_r=\cos\theta\ve_x+\sin\theta\ve_y $$ $$ \ve_\theta=-\sin\theta\ve_x+\cos\theta\ve_y $$ ↑これはずばり、「回転の表現行列」$\left(\begin{array}{cc}\cos\theta&\sin\theta\\-\sin\theta&\cos\theta\end{array}\right)$ですよね?
はい、その通りです。

自動車道にいって、gradを見つけたい。
探せばあちこちにあると思います。急な坂、長い坂があるところ。

gradは演算子ですか? それとも一つのベクトルなんですか。
演算子です。丁寧に言うと、「スカラーからベクトルを作る演算子」です。

偏微分の「方向」が見えてきた。
「方向」がちゃんとある微分なのです。

アプリでぐるぐるするのが楽しかった。
楽しみつつ、$\ve_r,\ve_\theta$は場所によって違う方向向いているんだな、ということを実感しておいてください。

グラディエントをうまく理解できなかった。
そういう時は質問して。

極座標は物理でも使ってましたが、本当に使われるもんなのだと実感できました。
もちろん、使います。どんどん使っていきましょう。

ベクトルの内積の計算など、色々なことを忘れていたのでついていくのが大変でした。
内積あたりは、もう普通に使えるようになりましょう(さらには外積もある)。

僕は先週インフルエンザにかかっていました。いつも前野先生は半袖なので体調崩さないか心配です。気をつけてください。
ご心配ありがとう。私は汗かきなので、できる限り厚着をしないようにしているのです。