昔作った64ビット整数を用いた多項式の計算を行うライブラリを使って、ルジャンドル多項式を計算してみよう。
単純に、
n乗してn回微分して割り算して、
だとすぐにオーバーフローして、13次までのルジャンドル多項式しか出てこない。
ちょっと工夫して、
1回微分しては2とi(1〜n)で割る、
だと28次まで求まる。
もう一工夫して、
1回微分しては2とi(n〜1)で割る、
だと31次まで求まる。
しかし、これはプログラミングは簡単で(ライブラリがあるから)、わずか17行で組めるけど、
本当は直接係数を計算したほうがいいような気がする。
昨日の表記は、関数の直交性、すなわち、
の確認しやすさのためにあるのだろう。
もっとも、m=nのときは計算が結構難しくて、1時間くらいかかった。
http://d.hatena.ne.jp/inamori/20050900/1126183443
脱線したが、
係数を直接表記するのは簡単で、
これ、あってんのかな?
続きは明日できたら。