炭焼きの煙に涙ぐみながら、九十九折の山道を登っていく 3話
「これはすでに述べた方向微分とも関連しているのだけれど、(x,y)を、(15,15)を基点にxy平面上の北東へのごく小さな一歩rのみで表現したらどうだっけ?」
「これは何度も出てきたよね。(x,y)=(15+r/(2^1/2),15+r/(2^1/2))だわ。」
「うんうん。これで、x,yという2つの変数を、rという1つの変数で表現できたわよね?では、とりあえずこれをz=f(x,y)=x^2/3+y/4に代入してみると、
z=f(r)=(15+r/(2^1/2))^2/3+(15+r/(2^1/2))/4となり、これをrで微分すると、
dz/dr=18(15+r/(2^1/2))^2/3 / {27(15+r/(2^1/2))(2^1/2)}+1/(4(2^1/2))、r=0.1とおくと、0.3676だわね。ちなみに、左項の分子に(2^1/2)が出現するのは、
(15+r/(2^1/2))^2/3が合成関数の微分であるため、(15+r/(2^1/2))=uと置いて、du/drしたものだから注意してね。
さて、ちょうど合成関数の話が出てきたから流れで説明できて嬉しいけど、そもそも(x,y)=f(r)、そしてz=f(x,y)なのだから、これも合成関数だということがお分かりいただけるかしら。
つまり、dz/dr = (∂z/∂x)(dx/dr)+(∂z/∂y)(dy/dr)
という関係が導き出せるわけね。f(x,y)をxで微分し、xをrで微分し、両者をかければ、zをx方向のr増分で微分したことになり、f(x,y)をyで微分し、yをrで微分したものをかければ、
zをy方向のr増分で微分したことになるので、この2つの和が、めでたくz=f(x,y)をrで微分できたということになるわ。
実際に試してみると、∂z/∂x=18(x^2/3)/27x、 ∂z/∂y=1/4、 dx/dr=1/(2^1/2)、 dy/dr=1/(2^1/2)
よって、 (∂z/∂x)(dx/dr)+(∂z/∂y)(dy/dr) = {18((15+r/(2^1/2))^2/3)}/{27(15+r/(2^1/2)}*1/(2^1/2)+1/(4(2^1/2))、r=0.1とおくと、0.3676で、確かにdz/drとなったでしょ?」
「あっ、面白~い。zを直接rで微分するのと、zを一度xとyで微分して、それからxとyをrで微分するのは、結局同じことだというのがよくわかるわぁ~。
まるで、rの変化がxとyへ、xとyの変化がzへと連鎖していくようなイメージなのね。
「だからこれには、連鎖法則という名前がついているのよ。あいすすとーむ!☆」
「連鎖法則を用いて、z=f(x,y) x,y=g(r)とdz/drが等しいことがわかったけど、ここでさらに、x,yを2変数関数にしたらどうなるかしら?つまり z=f(x,y) x,y=g(t,w)が、dz/dt+dz/dwと
等しくなる、と拡張した場合ね。さきほどは、x=15+r/(2^1/2) y=15+r/(2^1/2)という、xではcosπ/4、yではsinπ/4である1/(2^1/2)を定数としていたから、北東の方角に限定した
rの大きさ次第のzを求める式になっているわ。2変数関数に出来るということは、この1/(2^1/2)という定数を変数に出来る、つまり角度をいろいろ変えることが出来るのよ。」
「じゃあ、x(t,w)=15+tcosw、y(t,w)=15+tsinwになって、∂z/∂t=(∂z/∂x)(dx/dt)+(∂z/∂y)(dy/dt)、∂z/∂w=(∂z/∂x)(dx/dw)+(∂z/∂y)(dy/dw)ってことね!
∂z/∂x=18(x^2/3)/(27x)、∂z/∂y=1/4、dx/dt=cosw、dx/dw=-tsinw、dy/dt=sinw、dy/dw=tcoswだから、
∂z/∂t={18(x^2/3)cosw}/(27x)+sinw/4、これを(x,y)をf(t,w)として表すと、{18((15+tcosw)^2/3)cosw}/(27(15+tcosw))+sinw/4だわね。あっ、この式が正しいって一瞬でわかっちゃった。
だって、w=π/4とすれば、{18((15+t/(2^1/2))^2/3)}/{27(15+t/(2^1/2)}*1/(2^1/2)+1/(4(2^1/2))となって、さっきやった(x,y)=f(t)の一変数関数と置いたときの式と、全く同じ形になるもの!
てへへ。じゃあ引き続き∂z/∂wも求めてみると、
∂z/∂w={-18(x^2/3)tsinw}/(27x)+(tcosw)/4、これを、(x,y)をf(t,w)として表すと、{-18((15+tcosw)^2/3)tsinw}/(27(15+tcosw))+(tcosw)/4になったわ。」
「t=0.1と固定して、wを勾配ベクトルより大きい60°と設定してみましょうか。勾配ベクトルで斜度が最大になることから、勾配ベクトル以上の60°を代入すれば、
傾きは負になることが予想されるわね。{-18((15+0.1/2)^2/3)(0.1*(3^1/2)/2)}/(27(15+0.1/2))+(0.1/2)/4=-0.0108、よって1.08%の下り勾配。」
「う~ん、大ちゃん、惜しいわね。勾配ベクトルを過ぎると勾配が負の値を示すことに目をつけたのは良いし、確かに負にはなっているんだけど、
正しい勾配はその値の約10倍になるわ。なぜかというと、
∂z/∂w={-18(x^2/3)tsinw}/(27x)+(tcosw)/4は実は正しくなくて、正しくは∂z/∂w={-18(x^2/3)sinw}/(27x)+cosw/4だからなの。
(15+tcosw)∂/∂wは、普通に計算すると-tsinwになるけれど、ここでは-sinwが正しいの。これはなぜかというと、
微分の定義から、w0の角度に長さtだけ延びた点pと、w1の角度に長さtだけ延びた点qとを比べたときに、
(tcosw1-tcosw0)/|q-p|
となる値だわね。」
「ははぁ~ん、こうして見ると、tの値にしたがって、|q-p|も比例変化するわけだから、tは導関数に入らないってことね。
もし仮に入っていたとしたら、相似なはずの三角形の斜辺の長さが変わったときに、斜辺と底辺をなす角度wまで変わってしまうということになるから、
そこでも-tsinwではなくて、-sinwが正しいことがわかるわ。」
「それじゃあ正しい式がわかったところで、dz/dwに、勾配ベクトルgradf(15,15)=(0.27,0.25)=42.792°を代入してみましょう。何が起こるかしら?」
「仮にt=0.1として、(-18sin42.792(15+0.1*cos42.792)^2/3)/(27(15+0.1*cos42.792))+cos42.792/4=0.00264≒0.2%の勾配・・・。ほぼ勾配ゼロということは、以前に出した、
標高増加分は勾配ベクトル方向の傾きとxy平面上の移動分の内積で求められるという関係、
gradf・Δt、 gradf×Δt×cosπ/2=0
となり、角度wの微分とはすなわち、基点(ここでは(15,15))からw0方向へのベクトルに直交している向きに、xy座標が移動することを示しているのね!
それに、(-18sinw(15+tcosw)^2/3)/(27(15+tcosw))+cosw/4 に、w=0を代入すれば、それは完全にy軸方向つまり南北軸に沿って一歩を踏み出した場合の傾斜0.25=25%と一致すること、
w=π/2を代入すれば、それは完全に東西軸に沿って、一歩を踏み出した場合の傾斜-0.27=-27%と一致することからも明らかだわ!」