Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português - Русский -
Scilabヘルプ >> Signal Processing > Filters > convol

convol

畳込み(コンボリューション)

呼び出し手順

[y]=convol(h,x)

[y,e1]=convol(h,x,e0)

引数

h

ベクトル, 最初の入力シーケンス ("短い" シーケンス)

x

ベクトル, 第2の入力シーケンス ( "長い" シーケンス)

e0

ベクトル,オーバーラップ加算のための前の結果の末尾 (最初のコールでは使用されません)

y

ベクトル, 畳込み.

e1

オーバーラップ加算のための新規結果の末尾 (最後のコールでは使用されません)

説明

fftを用いて2つの離散シーケンスの畳込み y= h*x を計算します. 畳込みは以下のように定義されます:

オーバーラップ加算法を使用できます.

オーバーラップ加算の使用例: x=[x1,x2,...,xNm1,xN]の時, 最初のコールは, [y1,e1]=convol(h,x1); その後のコール : [yk,ek]=convol(h,xk,ekm1); 最後のコール : [yN]=convol(h,xN,eNm1); 結果は, y=[y1,y2,...,yNm1,yN].

畳込みの定義に基づくアルゴリズムは,多項式の積として実装されます: y=convol(h,x)は, y=coeff(poly(h,'z','c')*poly(x,'z','c')と等価ですが、 xが"長い"配列の場合には,はるかに効率的です.

x=1:3;
h1=[1,0,0,0,0];h2=[0,1,0,0,0];h3=[0,0,1,0,0];
x1=convol(h1,x),x2=convol(h2,x),x3=convol(h3,x),
convol(h1+h2+h3,x)
p1=poly(x,'x','coeff')
p2=poly(h1+h2+h3,'x','coeff')
p1*p2

参照

  • corr — 相関 , 共分散
  • fft — 高速フーリエ変換
  • pspect — Welchの平均ペリオドグラム法による 2つの離散時間信号の間の両面相互スペクトル推定.
Scilab Enterprises
Copyright (c) 2011-2015 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jun 15 08:35:25 CEST 2016