pythonによる最小二乗法・最適化問題
GUIプログラミング
関連Web
- 計算材料科学特論
2022
全ファイルのZIPアーカイブ: tutorial-optimize.zip
pythonの基本
- トップページ
- pythonのインストール方法
Install python
- Pythonの基本変数型
- pythonの起動と対話モード
pythonによる最適化GUIプログラミング
a) 基本
- CSVファイルの読み込みとグラフプロット
01-readcsv.py
02-plotcsv.py
b) numpy.polyfit()
- 多項式最小二乗法
03-polynomial-lsq.py
y
- グラフにプロット
04-polynomial-lsq-plot.py

c) scipy.optimize.leastsq()
- 多項式最小二乗法を行い、グラフにプロット
05-leastsq-plot.py
- フィッティング範囲を指定
06-leastsq-plot-range.py
- フィッティング範囲を起動時引数で変える
07-leastsq-plot-range-arg.py

c-2) scipy.optimize.fsolve()
scipy.optimize.leastsq()
直列抵抗、shunt抵抗のあるダイオードの等価回路モデルでI-V特性をフィッティング。
I-V特性を求めるために、方程式の解を求めるscipy.optimize.fsolve()
を使う。
最小二乗法はscipy.optimize.minimize()を使う (simplex法)。
- プログラム 07b-diodeiv-leastsq.py
データ diodeiv.csv
実行: python 07b-diodeiv-leastsq.py diodeiv.csv

d) tkinterを使い、ファイル選択、フィッティング範囲などを指定する部分をGUI化する
- tkinterを使ってGUIインターフェースを作る
(最小二乗は関係なし)
08-GUI-tkinter.py

- GUIでファイル選択をして最小二乗
09-leastsq-GUI.py
- GUIで条件設定をして最小二乗を行う
初期設定をinifile形式の設定ファイルから読み込む
(未完)。
注意:
Anacondaを使っている場合でも、configparserのインストールが必要
10-leastsq-GUI-inifile.py
- tkinterのcanvasにmatplotlibを表示
11-leastsq-GUI-tkmatplot.py
-