プログラミング

MATLAB/simulink

MatlabでPID制御のシミュレーションをする

MatlabでPID制御のシミュレーションをする。システムとPID制御器の伝達関数は \begin{align}P&=\frac{1}{s+1} \\C&=K_P + \frac{K_I}{s} + K_D s \end{align} また...
C/C++/C#

Aliexpressで買ったWS2812Bを光らせる

Aliexpressに自称WS2812Bが売っていたので買ってみた。購入ページはここ。 1000個買って届いたものがこれ。値段は3000円だった。 VDDは5V、VSSはGNDに接続する。1つのみの場合はDINはArduinoへ、DOUTは...
python

数列によるネイピア数の定義とグラフ

ネイピア数は数列を使って \begin{align}e=\lim_{n \to \infty} \left ( 1 + \frac{1}{n} \right )^n\end{align} で定義される。収束の様子は次のようになる。 以下コー...
python

素数定理のグラフを描く

\(n\)までの自然数に含まれる素数の数を\(\pi(x)\)とおく。\(n\)を大きくしていくと \begin{align}\pi(x) \sim \frac{n}{\log x}\end{align} が成り立つ。この関係を素数定理とい...
python

【制御】Pythonで単位ステップ関数を描く

Pythonで単位ステップ関数を描画する。単位ステップ関数は \begin{align}H(x)=\begin{cases}1 \hspace{10mm} (x \geq 0)\\0 \hspace{10mm} (x <0)\end{cas...
python

【解析】Sympyの関数を使ってヘビサイドの階段関数を描画する

Sympyの関数を使ってヘビサイドの階段関数を描画する。ヘヴィサイドの階段関数は \begin{align}H(x)=\begin{cases}1 \hspace{10mm} (x >0)\\0 \hspace{10mm} (x <0)\e...
python

【制御】互いに逆数の関係にあるシステムのボード線図と性質

2つのシステムが \begin{align}G_1=\frac{1}{s^2+s+1} \hspace{10mm} G_2= \frac{1}{G_1}\end{align} のような逆数の関係にある時、それぞれのボード線図は\(x=0\)...
python

【制御】直列に接続されたシステムのボード線図と性質

2つのシステム \begin{align}G_1=\frac{1}{s} \hspace{10mm} G_2=\frac{1}{s^2+s+1}\end{align} が直列に接続されているとき、全体のボード線図はそれぞれの伝達関数のボード...
python

【解析】双曲線関数の性質3

双曲線関数 \begin{align}\sinh x= \frac{e^{x}-e^{-x}}{2}\\\cosh x= \frac{e^{x}+e^{-x}}{2}\end{align} について \begin{align}\sinh x...
python

【解析】双曲線関数の性質2

双曲線関数 \begin{align}\sinh x= \frac{e^{x}-e^{-x}}{2}\\\cosh x= \frac{e^{x}+e^{-x}}{2}\end{align} について \begin{align}\sinh x...
python

【解析】Pythonで三角関数3種のグラフを描く

Pythonで三角関数 \begin{align}y&= \sin x\\y&= \cos x\\y&= \tan x\\\end{align} を描く。結果 以下ソースコード import numpy as np import matpl...
python

【解析】Pythonで双曲線関数を描く

Pythonで双曲線関数 \begin{align}y&= \sinh x\\y&= \cosh x\\y&= \tanh x\\\end{align} を描く。結果 以下ソースコード import numpy as np import m...
MATLAB/simulink

【解数】Pythonで指数と対数のグラフを描く

指数と対数のグラフを描く。以下ソースコード import numpy as np import matplotlib.pyplot as plt x = np.arange(-10.0, 10.0, 0.02) plt.plot(x, x*...
python

【解析】Pythonで三次関数のグラフを描く

pythonで二次関数のグラフを描く。三次関数は \begin{align}f(x)=ax^3+bx^2+cx+d(a≠0)\end{align} のような関数でこれをただ計算すればいい。例えば \begin{align}y=x^3+2x^...
python

【解析】指定した頂点を通る二次関数を描画する

二次関数 \begin{align}y=ax^2+bx+c \hspace{5mm} (a \neq 0)\end{align} は\(a\)と頂点\((p,q)\)を定めたとき、\(b,c\)を \begin{align}b&=-2ap ...
python

【プログラミング】Pythonでクラスを使う

Pythonでクラスを使う。継承等は後々考えるとして基本形は次の通り。 class animal: def __init__(self, name): self.name = name animal1 = animal('cat') pri...
python

【解析】Pythonで一次関数のグラフを描く

pythonで一次関数のグラフを描く。一次関数は \begin{align}f(x)=ax+b (a \neq 0)\end{align} のような関数でこれをただ計算すればいい。例えば \begin{align}y=x+3 \end{al...
python

【解析】Pythonで二次関数のグラフを描く

pythonで二次関数のグラフを描く。二次関数は \begin{align}f(x)=ax^2+bx+c (a \neq 0)\end{align} のような関数でこれをただ計算すればいい。例えば \begin{align}y=x^2+4x...
python

【代数】Sympyを使って部分分数分解をする

sympyをつかって部分分数分解を計算する。sympyを導入した環境で apart() 関数を使えばいい。 以下ソースコード import sympy as sp x = sp.symbols("x") f = sp.apart(5/(x*...
python

【幾何】ラマヌジャンの公式を使った円周率計算 その2

ラマヌジャンの円周率公式を使って円周率を計算する。式は次の通り。 \begin{align}\frac{4}{\pi} = \sum_{i=0}^{\infty} \frac{(-1)^n (4n)! (1123+21460n)}{882^...