しろねこらぼ(旧)

しろねこの気まぐれ技術日記

プログラミング

二次元平面上に置かれた二点間の距離を求める

二次元平面上に置かれた二点間の距離は \begin{align} d(p_{1},p_{2})=\sqrt{(x_{2}-x_{1})^2+(y_{2}-y_{1})^2} \end{align} で与えられる。カレントディレクトリに function d =distance(P1,P2) d=sqrt((P2(1,1)-P1(1,1))^2+P2(1,2)-P1(1,2)^2); end とした…

巡回セールスマン問題がおもしろそうなのでmatlabでシミュレーションしてみる #1

巡回セールスマン問題とは、あるセールスマンが複数の都市を訪れるとき、どのような順番で巡回すれば最も効果的(時間、移動距離、交通費等)かを解くグラフ理論の有名な問題の一つである。 この問題の難しい点は巡回する都市の数が多くなると計算量が爆発的…

pythonで記述した関数を別ファイルに記述し直してimportする

いつも忘れるのでまとめておく。 pythonのバージョンはpython3.7を利用している。始めに次のようなコードを考える。 print('Hello! python') これを関数化して別ファイルに移せば import greeting greeting.helloworld() def helloworld(): print('Hello! py…

matlabでの伝達関数の定義法

matlabでの伝達関数の定義は単純で、例えば次のような伝達関数 \begin{align} G(s)=\dfrac{1}{s^{2}+2s+3} \end{align} であれば Np = [0, 1] Dp = [1, 2, 3] P = tf(Np, Dp) とすればいい。 matlabのLisenceを所持していない場合、Python_Controlパッケージ…

pandasを使ったcsvファイルの読み込み

pandasを使ったcsvファイルの操作が思いのほか使いやすかったので残しておく。 pandasがインストールされている環境で import pandas as pd df = pd.read_csv('FILEPASS/FILENAME.csv',encoding = 'cp932',usecols=[2]) print(df) とすればcsvファイルの2列…