プログラミング

MATLAB/simulink

【制御】加法的不確かさを持つモデル集合のボード線図を書く

加法的不確かさは\begin{align}\tilde{P}=\{P+\Delta W_a: \|P\|_\infty \leq 1\}\end{align}で与えられる。この定義に従い、次のような場合のモデル集合\(\tilde{P}\)...
MATLAB/simulink

【制御】乗法的不確かさを持つモデル集合のボード線図を書く

乗法的不確かさは\begin{align}\tilde{P}=\{(1+\Delta W_m)P: \|P\|_\infty \leq 1\}\end{align}で与えられる。この定義に従い、次のような場合のモデル集合\(\tilde{P...
MATLAB/simulink

【制御】MATLABで離散時関系のH∞ノルムを求める

MATLABならば連続時間のときと同じ。以下コードs=tf('s');sys=c2d(1/(s^2+s+1),1);norm(sys,Inf)
MATLAB/simulink

【制御】MATLABでH∞ノルムを計算する

線形時不変なシステム\begin{align}H(s)=\frac{1}{s^2+s+1}\end{align}のH∞ノルムを求める。すでに用意されている関数を使えばすぐに実装できる。以下コードs=tf('s');sys=1/(s^2+s+...
python

【機械学習】LSTMを使った未来予測

初心者のRNN(LSTM) | Kerasで試してみるを参考にLSTMを使った未来予測をやってみた。PyCharmではそのまま実行できないのでライブラリ読み込みをfrom tensorflow.python.keras.models imp...
C/C++/C#

【C言語】入力された数が素数であるかの判定をする

C言語で素数であるかの判定をする。最も簡単な方法は順番に割り切れるか調べる方法である。以下実装例。#include<stdio.h>void isprime(int);int main(void) { int x; char str; wh...
python

【機械学習】PyCharmでfrom tensorflow.kerasとエラーが出たときは

PyCharmでfrom tensorflow.keras.models import Sequentialとするとエラーが出る。回避するにはfrom tensorflow.python.keras.models import Sequen...
python

【機械学習】TensorFlowのチュートリアルを実行する

TensorFlowのチュートリアルを試した。以下コードimport tensorflow as tf mnist = tf.keras.datasets.mnist (x_train, y_train), (x_test, y_test)...
python

【機械学習】TensorFlowでCould not load dynamic library ‘cudnn64_8.dll’; dlerror: cudnn64_8.dll not foundと出たとき

TensorFlowを使っている時、Could not load dynamic library 'cudnn64_8.dll'; dlerror: cudnn64_8.dll not foundとエラーが出たときはcuDNNをインストール...
python

【機械学習】TensorFlowでCould not load dynamic library ‘cudart64_110.dll’; dlerror: cudart64_110.dll not foundと出たとき

TensorFlowを使っている時、Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not foundとエラーが出たときはKUDATo...
python

【プログラミング】PyCharmでSympyを使う

PyCharmで次のSympyライブラリを使ったプログラムを動かす。import sympyprint(2+3*sympy.I)print(sympy.conjugate(2+3*sympy.I))始めにPyCharmのプロジェクトにSym...
python

【機械学習】TensorFlowと機械学習

機械学習のライブラリで有名なものにTensorFlow(Google)PyTorch(Facebook)があります。TensorFlowの読み方はテンソルフローもしくはテンソーフローのどちらでも良く、数学のテンソルから来ているようです。さて...
python

【素数】新しい素数を探すには

新しい素数を探すにはどうすればいいだろうか。素数を探すにはエラトステネスの篩があるがこれ以外にも、例えば素数\(P\)について\begin{align}Q=1+\prod_{i=1}^{N} P_{i}\end{align}のような数を考え...
C/C++/C#

【C言語】外積因子をC言語で定義する

以前定義した外積因子をC言語で使う。外積因子についてはここを参照。以下コード#include<stdio.h>int main(void) { int i, j; double x = { 1,2,3 }; double S = { {0,...
C/C++/C#

【C言語】Σの公式を計算する

C言語で\(\Sigma\)の公式を計算する。今回計算する公式は次の通り。\begin{align}\sum_{k=1}^{n} k^2 = \frac{1}{6} n (n+1) (2n+1)\end{align}以下コード。#inclu...
C/C++/C#

【C言語】前に書いたコラッツ予想のプログラムを再帰関数を使って書き直す

コラッツ予想についてはここを参照。関数「Collatz」を定義して書き直した。#include <stdio.h>#include <stdlib.h>int Collatz(int);int main(void) { int num; p...
C/C++/C#

【C言語】二項定理を実装する

二項定理は\begin{align}(x+y)^{n}= \mathrm{{}_{n} C_{0}} x^{n}y^{0}+ \mathrm{{}_{n} C_{1}} x^{n-1} y^{1}+ \mathrm{{}_{n}C_{2}}...
C/C++/C#

【C言語】再帰呼び出しでユークリッド距離を計算する

ユークリッド距離を再帰呼び出しで計算する。前回と同様に2つのベクトル\(A,B\)の距離は\begin{align}d=\sqrt{(a_1 - b_1)^2+(a_2 - b_2)^2 + \cdots +(a_{n-1} - b_{n-...
C/C++/C#

【C言語】ユークリッド距離を計算する

2つのベクトル\(A,B\)の距離は\begin{align}d=\sqrt{(a_1 - b_1)^2+(a_2 - b_2)^2 + \cdots +(a_{n-1} - b_{n-1})^2+(a_n - b_n)^2}\end{al...
C/C++/C#

【C言語】再帰呼び出しを使って階乗を計算する

再帰呼び出しを使えばプログラムが単純になる場合がある。再帰呼び出しを使って階乗を計算するには次のようにすれば良い。サンプルコードではfactorial関数内で再帰呼び出しを行っており、nが1になれば再帰呼び出しが終了するようになっている。再...