MATLABで用いる関数と演算子
("MATLAB対応 ディジタル信号処理"の中で用いているもののみ抜粋)
定数
pi 円周率
eps 浮動小数点相対精度
演算子と特殊キャラクタ
数値演算子
+ 加算.行列の場合は要素ごとの加算.
- 減算.行列の場合は要素ごとの減算.
* 乗算.行列の場合は行列の積を出力.
/ 除算.行列の場合は行列の右除算.
.* 行列の要素ごとの乗算.
./ 行列の要素ごとの除算.
^ ベキ乗.行列の場合は行列のベキ乗(正方行列).
.^ 行列の要素ごとのベキ乗.
比較演算子
== 等号
~= 否定
<, >, <=, >= 比較演算子
論理演算子
& 論理積
| 論理和
~ 否定
特殊演算子
: ベクトルを生成する.例 1:5 , 4:2:20
; 結果を表示しない.または,関数と関数を区切る.
... 次の行に続けて記述する.
% コメント
.' 転置行列を出力する. 例 A.'
関数
abs abs(x):xの絶対値を出力する.
angle angle(h):複素数hの位相角(ラジアン単位)を出力する.
axis axis([XMIN XMAX YMIN YMAX]):グラフのx軸とy軸の範囲を
指定する.
bilinear [NUMd,DENd]=bilinear(NUM,DEN,Fs):双一次z変換を行う.
blackman blackman(N):blackman窓を長さNの列ベクトルとして出力する.
boxcar boxcar(N):要素が全て1の列ベクトルを出力する.
butter [B,A]=butter(N,Wn):N次の低域通過
ディジタルButterworthフィルタを設計する.
buttord buttord(Wp,Ws,Rp,Rs):通過帯域の損失がRp [dB]以下で,
遮断帯域に少なくともRs [dB]の減衰をもつという条件を満たす
ディジタルButterworthフィルタの最小次数Nを出力する.
ceil ceil(x):xより大きく最もxに近い整数を出力する.
circconv circconv(h,x):ベクトルhとベクトルxの循環たたみこみを
計算する.自作の関数.
colormap colormap(gray):figureのカラーマップをリセットする.
colormap([0 0 0]):白黒表示させる.
compose compose(f,g,x,z):Symbolic Math Toolboxの関数.
関数f(x)のxに関数g(z)を代入する.
conv c=conv(a,b):ベクトルaとbのたたみこみを計算する.
conv2 C=conv2(A, B):行列AとBの2次元のたたみこみを計算する.
cos cos(x):xの余弦値を出力する.
cot cot(x):xの余接値を出力する.
direct ディジタルバタワース低域フィルタを直接設計法で
設計する.自作の関数.
disp disp(X):配列Xを表示する.Xが文字列ならば,
その文字列を表示する.
double double(x):xを倍精度に変換して出力する.
error error('message'):エラーメッセージを出力し,処理を中止する.
exp exp(x):xの指数関数を出力する.
fft fft(x):ベクトルxの高速フーリエ変換を出力する.
fft2 fft2(X):行列Xの2次元フーリエ変換を出力する.
fftshift fftshift(x):ベクトルxの右半分と左半分を入れ替えて出力する.
figure figure:新しいfigureウィンドウを作成する.
filter y=filter(b,a,x):ベクトルXのデータをフィルタリングした結果を
出力する.
filter2 Y=filter2(B,X):係数行列Bで与えられる2次元フィルタを用いて
Xをフィルタリングする.
fir1 fir1(N,Wn):N次の低域通過ディジタルFIRフィルタを設計する.
fix fix(x):xの小数点以下を切り捨てた値を出力する.
flipud flipud(X):行列Xの行を反転させた結果を出力する.
floor floor(x):xより小さく最もxに近い整数を出力する.
for for と endにはさまれた命令を一定回数繰り返し実行する.
freqs freqs(b,a,w):分子の係数ベクトルがb,分母の係数ベクトルがaで
与えられるアナログフィルタの周波数応答を出力する.
freqz freqz(b,a,w):フィルタの周波数応答を出力する.
freqz2 freqz2(X):2次元信号の周波数特性を出力する.
freqztrans freqztrans(b,a,ftype,thetac,wc):Symbolic Math Toolboxを用いて
周波数変換を行う.
function 新たな関数を定義する.
gray gray:グレイスケールのカラーマップを出力する.
grid grid:グラフに格子状の目盛りを表示する.
hamming hamming(N):hamming窓を長さNの列ベクトルとして出力する.
hanning hanning(N):hanning窓を長さNの列ベクトルとして出力する.
hold hold on:この命令以降のプロット命令を同一のグラフ上に
上書きする.
if 条件分岐を行う.
ifft ifft(x):xの逆高速フーリエ変換を計算する.
imag imag(x):複素数xの虚部を出力する.
imnoise J=imnoise(I,TYPE,...):行列Iに格納された画像に対して,各種の
ノイズを付加する.
impinvar impinvar(B,A,Fs):係数ベクトルBと係数ベクトルAで与えられる
アナログフィルタのインパルス応答と等しいインパルス応答をもつ
ディジタルフィルタの係数ベクトルBZ,AZを出力する.
imread A=imread(FILENAME,FMT):FILENAMEで指定した画像ファイルを
行列Aに読み込む.
imresize imresize(A,s):行列Aに格納された画像のサイズをs倍にして
出力する.
imshow imshow(I,[LOW HIGH]):行列Iに格納された画像を表示する.
iztrans iztrans(f):symbolic Math Toolboxの関数.関数fの逆z変換を
計算する.
kaiser kaiser(N,beta):betaをパラメータするkaiser窓を長さNの
列ベクトルとして出力する.
legend legend(string1,string2,string3, ...):ひとつのfigure上に複数の
グラフを描いたときに各グラフのラベルを表示する.
length length(x):ベクトルxの長さを出力する.
linspace linspace(x1,x2,n):x1とx2の間を等間隔に区切ったn個の要素をもつ
ベクトルを出力する.
log10 log10(x):xの10を底とした対数を出力する.
log2 log2(x):xの2を底とした対数を出力する.
max max(x):xの最大要素を出力する.
mesh mesh(X,Y,Z):メッシュ状の三次元グラフを表示する.
meshgrid meshgrid(x,y):(ベクトルyの長さ)行(ベクトルxの長さ)列の行列
を2つ出力する.一方は全ての行がベクトルxと同じであり,もう一方は
全ての列がベクトルyを転置したものと同じである.
min min(x):xの最小要素を出力する.
mod mod(x,y):xをyで割ったあまりを出力する.
myconv myconv(h,x)はベクトルhとベクトルxのたたみこみを計算する.
MATLABの既存の関数のconvと同じ計算をする.自作の関数.
mydft mydft(x):ベクトルxの離散フーリエ変換を計算する.
自作の関数.
myfft myfft(x):ベクトルxの高速フーリエ変換を計算する.
自作の関数.
myfilter myfilter(b,a,x):matlabの既存の関数filterと同じ計算を行う.
自作の関数.
numden numden(A):Symbolic Math Toolboxの関数.
有理多項式Aの分子の多項式と分母の多項式を出力する.
ones ones(m,n):要素がすべて1のm行n列の行列を出力する.
pcolor pcolor(X,Y,Z):3次元のグラフを濃淡の変化を用いて
平面上に表示する.
plot plot(x,y):xを横軸,yを縦軸としてグラフを描く.
plot(x,y,'o')のようにプロットのスタイルを変えることもできる.
plot3 plot(x,y,z):3次元プロットを表示する.
poly2sym poly2sym(b,z):Symbolic Math Toolboxの関数.
係数ベクトルがbで定義される多項式を出力する.
この多項式の変数はzで設定する.
prod prod(X):Xがベクトルときは各要素の積を出力する.
Xが行列のときは,各列の積を行ベクトルとして出力する.
real real(x):xの実部を出力する.
roots roots(C):係数ベクトルがCである多項式の根を計算する.
shading shading interp:グラフの各格子点間の色を線形に補間する.
simple simple(s):symbolic Math Toolboxの関数.関数sを簡略化して
出力する.
simplify smplify(S):Symbolic Math Toolboxの関数.
式Sを簡単化し,有理多項式として出力する.
sin sin(x):xの正弦値を出力する.
sinc sinc(x):xのsinc関数を計算する.
y = sin(pi*x)/(pi*x) x ~= 0 の場合
= 1 x == 0 の場合
size size(X):行列Xの大きさを出力する.
sqrt sqrt(x):xの平方根を出力する.
stem stem(x,y):xを横軸,yを縦軸の値としてデータを
プロットする.
subplot subplot(m,n,p):figureウィンドウをm行n列の小さいグラフに分割し,
その中のp番目のグラフを選択する.
surfl surfl(X,Y,Z):3次元のグラフを立体的に表示する.
switch 条件にあったcaseの内容を実行する.
sym2poly sym2poly(A):symbolic Math Toolboxの関数.
多項式Aからその係数ベクトルを出力する.
syms Symbolic Math Toolboxの関数で用いる変数を宣言する.
symsum symsum(s,a,b):Symbolic Math Toolboxの関数.関数sについてaから
bまでの和を求める.
tan tan(x):xの正接値を出力する.
tf2sos tf2sos(B,A):分子,分母の係数ベクトルがA,Bである伝達関数を
2次縦続形の伝達関数として表現し,その係数ベクトルを出力する.
unwrap unwrap(P):位相角Pの変化の絶対値がπより大きいとき,2πずらして
修正する.
view view(AZ,EL):3次元プロットでの視点を設定する.
AZは水平方向,ELは垂直方法の回転を設定する.
while 条件が成立している間,whileとendにはさまれた命令を繰り返す.
xlabel xlabel('text'):グラフのx軸にラベルを付ける.
ylabel ylabel('text'):グラフのy軸にラベルを付ける.
zeros zeros(m,n):m行n列の零行列を出力する.
zlabel zlabel('text'):グラフのz軸にラベルを付ける.
zp2tf zp2tf(Z,P,K):零点がベクトルZ,極がベクトルP,利得がKで
与えられる伝達関数の分子,分母の係数ベクトルを求める.
zplane zplane(Z,p):有理多項式の分子の係数ベクトルZと分母の係数
ベクトルpから零点と極をプロットする.
ztrans ztrans(f,k,w):Symbolic Math Toolboxの関数.kを変数とする関数fの
z変換を求める.
[back]
kawamata@mk.ecei.tohoku.ac.jp
Last modified: Tue Apr 25 15:11:34 JST 2000