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 - Русский

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
See the recommended documentation of this function

Scilab help >> CACSD > time_id

time_id

SISO 最小二乗同定

呼出し手順

[H [,err]]=time_id(n,u,y)

パラメータ

n

伝達関数の次元

u

以下のどれか

u1

システムへの入力ベクトル

"impuls"

y はインパルス応答

"step"

yはステップ応答.

y

応答ベクトル.

H

y(1)==0 の場合は分母がn次,分子がn-1次の有理関数, y(1)<>0 の場合, 分母と分子が n次の有理関数.

err

||y - impuls(H,npt)||^2, ただし, impuls(H,npt)Hのインパルス応答の最初の npt個の係数です.

説明

離散時間応答の同定. yが厳密にプロパーの場合(y(1)=0) , time_idは線形方程式に関する以下の最小二乗解 を計算します: coeff(Den,n):=1 を拘束条件とする Den*y-Num*u=0. y(1)~=0の場合, アルゴリズムはまず解のプロパーな部分を計算した後,y(1)を 解に追加します.

z=poly(0,'z');
h=(1-2*z)/(z^2-0.5*z+5)
rep=[0;ldiv(h('num'),h('den'),20)]; //インパルス応答
H=time_id(2,'impuls',rep)
//  flts および uを用いる同じ例
u=zeros(1,20);u(1)=1;
rep=flts(u,tf2ss(h));        //インパルス応答
H=time_id(2,u,rep)
//  step response
u=ones(1,20);
rep=flts(u,tf2ss(h));     //ステップ応答.
H=time_id(2,'step',rep)
H=time_id(3,u,rep)    // uを入力として指定, 高次過ぎる系を指定

参照

  • imrep2ss — インパルス応答の状態空間実現
  • arl2 — L2伝達関数近似による SISO モデル実現
  • armax — armax 同定
  • frep2tf — 周波数応答から伝達関数実現を得る
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon Oct 01 17:40:28 CEST 2012