ホーム ] PC技術/システム技術 ] VB.NETプログラミング ] なるほどナレッジ ] インフォメーション ]

上へ
高速化手法
平方根/立方根
整数指数
指数関数
実数指数
自然対数
一般対数
正弦/余弦
正接
逆正弦/逆余弦
逆正接
双曲線正弦/余弦
双曲線正接
逆双曲線関数

技術解説(数学関数編)

高速化手法

最終更新日:2006/12/14 再掲

●概要 

 精度は当然、目標値を達成するが、いくらVBだからと言って、遅くては良くないので、最善を尽くす。高速化手法の一般解説をしている。

●各手法の概説

 実際には各手法を混合して使用する場合もある。

○ニュートン

 これに関しては、既に逆数除算にて高速化手法(多段初期値法)を述べているので、そちらを参照方。

 →逆数、平方根、立方根

○級数展開

 一般的には、蚤i/bi の形式なので、以下の手法がある。詳しくは各数学関数の技術解説を参照方。

  • ai を小さく、bi を大きくなるようにする。
  • その変化の速度を早くする。
  • 求める変数の範囲を限定化する。

 →三角関数、双曲線関数、対数

級数演算

 標準的な級数の型における演算について解説する。

○漸化式

 関数によっては、漸化できるのもあるので利用する。

 →逆数、平方根、立方根などのニュートンでの多段初期値法、三角関数

○等価式

 数学原理に基づいて、等価な他の形式に変換して算出する。

 →FFT乗算、逆数除算、指数関数

○差分法

 真値との差を別な形で表現し、それを解く。

 →逆三角関数

○定義式(これは高速化の範疇ではないが、仕方がないもの)

 級数がない、級数が収束しない、級数での演算が困難などの場合は、数学の定義式で演算する。

 →階乗、双曲線関数