物理の問題には簡単に分けて、
![[Graphics:Images/index_gr_1.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_1.gif)
といった数学的な技術が必要である。方程式が、多項式の場合であっても、5次方程式以上の一般解は、
の根号と四則演算だけで、解析的に計算は出来ないことが証明されている。(ガロアの定理)まして、問題は、多次方程式ではない場合がほとんどである。
ここでは、具体的に、次の様な方程式を定量的に解いてみよう。[by mathematica]
![[Graphics:Images/index_gr_3.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_3.gif)
![[Graphics:Images/index_gr_4.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_4.gif)
![[Graphics:Images/index_gr_7.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_7.gif)
図をみて分かるように、2つ根がある。これをニュートン法という方法によってf(x)=0の解を解いていこう。考え方は、関数f(x)が解の付近で単調になっていれば、最初に仮定した点(初期値:x=
)での関数の接線を引き、そこでのx軸への接点を次のxの値として求め、何度も収束するまで、繰り返す方法である。n回目のxの値を
とすると、(
,f(
))の点での接線の方程式は、
![[Graphics:Images/index_gr_12.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_12.gif)
と与えられ、y=0の解を次/の x すなわち、
とする。フローチャートをみよ。
![[Graphics:Images/index_gr_14.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_14.gif)
C言語で以上のことをプログラムすれば、以下のようになる。
![[Graphics:Images/index_gr_17.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_17.gif)
mathematica で一回目をみれば、確かに
![[Graphics:Images/index_gr_22.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_22.gif)
値を得ている。
問い)収束したx=1.512135という解をえたが、もう一つのx=0.619061の値を得るにはどうしたらよいか?
次の漸化式で定義される多項式をルジャンドル関数(多項式)という。
![[Graphics:Images/index_gr_23.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_23.gif)
n次のルジャンドル関数は、n次の多項式で、微分は次の式を満たす。
![[Graphics:Images/index_gr_24.gif]](http://www.mns.kyutech.ac.jp/~kamada/keisan3/Images/index_gr_24.gif)
こんな漸化式もある。nが0でない偶数の関数で、そのゼロ点(
0)をx=0に近い解を求めよう。
H.Kamada
Converted by Mathematica