平方数2、接線の公式

いままでの章で「積分」を利用して平方根を求める事ができた。次は微分を利用して平方根を求める事を考えてみる

問題の起点

数学的な問題の解決にはおおまかに二つのアプローチがある

  • 幾何的に問題を解決(グラフや図を利用して、関連する事柄を見つけ出しその値や変数の動きを式に変換する)
  • 代数的に問題を解決(変数や式の変形を利用して望む形の式へと誘導する)

このふたつを混合して問題解決をして行く

平方根の実数を求める。この問題を解決するにはどうすれば良いか。代数のみで式を考えた場合
daum_equation_1424710985057.png
ここで問題解決の糸口が止まってしまう。なのでここで考える場所を代数から幾何に移す
幾何のグラフで考えた場合、C をグラフの上で求めたい時、交点が必要になる
この交点を求めるためは連立させる式が二つ必要になる。式は以下の様になる
daum_equation_1424711486194.png
これをグラフの図で表すと
rootC.png
このグラフの図の交点のx座標を知りたい
unityでMathf.sqrt(C)とした時や計算機で√Cとした時、このグラフの図で指している交点の x 座標をなんらかの方法で求めている
これを数式で求めるにはどうすればいいか?これが問題の起点となっている

問題の解決:接線の利用


この問題を解決する為に「接線」が利用される。初めて教えられた時、すぐには利用方法が判らなかった接線はこんな風に使われる
以下の図の赤いラインが y=x^2-c の放物線から導関数で得られた y'=2x の接線であり、このラインとユークリッド座標を利用することで
直角三角形が形作られる

  • C=2 , x=x0=3 としてグラフを描いている
  • x1 は未知数。接線の一次方程式と y=0 との交点

rootD.png
直角三角形の縦と横の長さが判明している際、傾きの式を作れる。つまりこの直角三角形の傾きの式は以下のようになる
daum_equation_1424868293095.png
daum_equation_1424869328707.png
また、微積分の導関数を利用することでも傾きを得ることが出来る。つまり y=x^2-c を導関数を通すと
daum_equation_1424868825382.png
ここで「ふたつの傾き同士の連立方程式」を組む準備が出来ていることに気が付く
(これは"速さの相似"を利用した重要なテクニックのひとつになっている。直感からは出て来にくいロジックになるが数学的には辻褄が合う計算になる)
また同時に、ここで微分で得る傾きと、直角三角形を利用した傾きの式が出会い接続される

では、この傾きの連立方程式を未知数 x1 に対して解いて行く
daum_equation_1424873155720.png
これで x1 の値が求まる式が出来た

試しに、この式を使って√2の実数値を計算してみる。C=2,x0=3 を設定し、この計算を漸化式的に3回繰り返してみる
daum_equation_1425046308591.png
無事、√2の実数値の近似が求まった。この式の動きをグラフで視覚化すると以下になる
rootF.png
つまり接線を使い、x0 から x1 (そして x1 から x2 )に向かって小さく細かい値に刻みながら接近していく。得られる値は近似の値となるがその誤差は漸化式の
回数を重ねることで極めて小さくなる(三角形が小さくなる)ので、ほぼ無視できるようになってくる。接線が放物線を超えて交点を飛び越えてしまうと考えがちだが
これには超えないという証明がある

相加平均と幾何平均は常に相加平均の方が大きな値となる。この相加平均の式は、この漸化式と同じ形をしている事を利用する
daum_equation_1425370215992.png
これで√Cより漸化式の値が大きいことが常に保障された。また漸化式の前後の計算、xn と xn+1 の「差の関係」を見ると以下の式が導き出され
daum_equation_1425370636078.png
式の関係(xn^2-C)とxn>=√C から値が常に正の値になる事が保障される

この一連の動作をunityでコード化すると以下になる



別の視点からみた漸化式


ここで上記の漸化式の xn+1 を y、Xn を x として連立方程式を考える。x は機能上、粗い暫定的な近似値となり y はその計算結果となっている
daum_equation_1425462999807.png

①は傾き1の直線グラフとなる。これはグラフ的に考えるとxをyの値へと更新し続ける漸化式と考える事ができる
②は x の値によって平方根の近似を y へと返す関数となり1/xの双曲線グラフとなる(以下のグラフ図は C=24 C=12 C=2 の時のグラフを表示させている)
2015-03-04 18.35.09.png
①と②のグラフ線の交点は C の平方根の値となる点に注目。上記の章で使った漸化式の動きをグラフ図で確認すると以下になる
rootJ.png
漸化式の動きは、グラフ図で見るとこのような「反復の動き」で目的の値へと近似して行くと言える

接線の方程式

上記で利用した漸化式を関数の式として考え整理すると以下の接線の方程式が作成できる
これにより二次方程式の接線を手軽に求めることが可能となる

rootE.png
点( α , f(α) )における接線の公式
daum_equation_1421942124745.png

詳しい計算方法などは以下の資料を参照

追加資料:
PocketCasを利用した同計算操作例。以下のように入力すると接線の式を計算できます(微分後の導関数の変数xに直接、値を入れて計算できる方法があるかもしれない?)

f(x):=3*x^2+6*x-3
diff(f(x))
ff(x):=6x+6
α:=3
simplify(ff(α)*(x-α)+f(α))

<接線計算利用の流れ>
曲線(二次関数) → 導関数や微分により接線を得る → 接線同士の方程式を利用して直角三角形のタテヨコ比が出せる → 各辺の長さや各座標がわかる


バビロニア式の平方根の近似実数化


√Cの近似値を実数、有理数で漸化式を使って求める事が出来る
これは連立二次方程式から導かれた漸化式
daum_equation_1414936330561.png
計算、開始時のx0は自由な値で良い(最初に収束に近い値を選ぶと計算回数が少なく桁も少なめの計算で精度がよくなる)
漸化式の中には微分積分の性質を持ったものがある。この式は微分に近い式の形をしていて、Cの影響である値に収束していく

計算例:√12を求める。x0は√9=3、√16=4と考えると3が良いと予想できる。従ってC=12,x0=3として漸化式を始める
計算機(PCも含む)で計算を行う場合、有理数で進めることで精度が劇的に向上する。面倒でも高速化と精度向上の為に有理数で組む事がお勧め
daum_equation_1414946476572.png
真値:√12=3.464101615 この事により小数点8桁まであっている事が分る。適切に運用すると、かなり精度が高い計算法である

メモ:xの値が小さいうちは1/3、しばらく計算を進めると1/2に収束していく。行き着く先はネイピア数?


未解決な気になる物


後日、調べる事
三角形の余弦定理と判別式には何か関係がある???
daum_equation_1421337003899.png

  • 最終更新:2015-03-05 01:36:58

このWIKIを編集するにはパスワード入力が必要です

認証パスワード