pythonによる最小二乗法・最適化問題 GUIプログラミング

関連Web

  1. 計算材料科学特論 2022

全ファイルのZIPアーカイブ: tutorial-optimize.zip

pythonの基本

  1. トップページ
  2. pythonのインストール方法 Install python
  3. Pythonの基本変数型
  4. pythonの起動と対話モード

pythonによる最適化GUIプログラミング

a) 基本

  1. CSVファイルの読み込みとグラフプロット
     01-readcsv.py 
     
     02-plotcsv.py
     

b) numpy.polyfit() 

  1. 多項式最小二乗法
      03-polynomial-lsq.py  
    y
  2. グラフにプロット
      04-polynomial-lsq-plot.py  

c) scipy.optimize.leastsq()

  1. 多項式最小二乗法を行い、グラフにプロット
      05-leastsq-plot.py
  2. フィッティング範囲を指定
      06-leastsq-plot-range.py
  3. フィッティング範囲を起動時引数で変える
      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法)。

  1.  プログラム 07b-diodeiv-leastsq.py
     データ diodeiv.csv
     実行:  python 07b-diodeiv-leastsq.py diodeiv.csv 
     

d) tkinterを使い、ファイル選択、フィッティング範囲などを指定する部分をGUI化する

  1. tkinterを使ってGUIインターフェースを作る (最小二乗は関係なし)
      08-GUI-tkinter.py 
  2. GUIでファイル選択をして最小二乗
      09-leastsq-GUI.py
  3. GUIで条件設定をして最小二乗を行う
    初期設定をinifile形式の設定ファイルから読み込む (未完)。
    注意: Anacondaを使っている場合でも、configparserのインストールが必要
      10-leastsq-GUI-inifile.py

     
  4. tkinterのcanvasにmatplotlibを表示
      11-leastsq-GUI-tkmatplot.py
  5.