Pythonでざっくりと数値解析の基礎をしてみる(参考文献まとめ)
イントロダクション
数値解析の基礎を復習するシリーズですが、記事を書く時間があまり取れそうにないので、先に参考サイトを紹介しておこうと思います。
時間に余裕が出来たときに、記事にまとめたいと思います。
非線形方程式の解法
こちらの記事にまとめています。
基本的な考え方は、反復計算によって高速に、正確に、近似解を求めるということです。
- 2分法の理論と実装
- Python - 非線形方程式解法 二分法 & ニュートン・ラフソン法
- ニュートン法(数値計算本を精読してプログラムを書き直そうシリーズ)
- ニュートン法とは何か??ニュートン法で解く方程式の近似解
- scipy.optimize.bisect 公式
- scipy.optimize.newton 公式
連立方程式の解法
中学では、代入法や加減法を使って解いたと思いますが、数値解析では行列を使います。
ヤコビ法やLU分解が有名な解法です。
固有値
固有値計算は線形変換、主成分分析、振動解析、量子計算で使われます。
べき乗法やヤコビ法が有名な解法です。
最小二乗法
統計を扱う場面で使われています。
線形なら1次式、それ以外なら2次、3次式の公式の係数を求めたいとき、各データ点との誤差の二乗が最小になるように係数を決定します。
pythonで最小二乗法を扱うときは、numpyのpolyfit
が簡単です。
数値積分
台形公式、シンプソン公式、モンテカルロ積分が有名な方法です。
高校数学では積分をするとき、微小区間の足しあわせで習った方も多いと思いますが、その考え方に近いのが、台形公式です。
また、モンテカルロ積分は乱数を使って積分する手法です。
数値微分
数値解析においては、数値積分の方が数値微分よりも概念がわかりやすいと個人的に思っています。
数値微分はオイラー法やルンゲクッタ法を使って解きます。
- オイラー法/ホイン法/ルンゲクッタ法をつかった常微分方程式の数値解析超入門
- オイラー法, テイラー級数法, ルンゲ=クッタ法(R による練習)
- NumPy・SciPyを用いた数値計算の高速化 : 応用その1
まとめ
次回の内容と更新予定日は未定です。