しろねこらぼ(旧)

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

MATLAB/simulink

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

二次元平面上に置かれた二点間の距離は \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

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

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パッケージ…

MATLABを使って電場を計算する

点電荷が作る電場は \begin{align} E=k \dfrac{q}{r^2} \end{align} で与えられる。ただしは単位系で決まる定数で、今回はSI単位系で計算するため \begin{align} k = \dfrac{1}{4 \pi \varepsilon_0 \varepsilon_r} \end{align} で与えられる。 はそれぞれ真…