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 > trzeros

trzeros

伝送ゼロおよび通常ランク

呼出し手順

[tr]=trzeros(Sl)
[nt,dt,rk]=trzeros(Sl)

パラメータ

Sl

線形システム (syslin リスト)

nt

複素数ベクトル

dt

実数ベクトル

rk

整数 (Slの通常ランク)

説明

出力引数の数を1としてコールされた場合,trzeros(Sl) は 線形システムSlの伝送ゼロを返します.

Sl は多項式(しかし正方の)行列D を有することがあります.

出力引数の数を2としてコールされた場合,trzerostr=nt./dtの時の 線形システムSlの伝送ゼロを返します;

(dt のいくつかの要素がゼロとなる可能性があることに注意してください)

出力引数の数を3としてコールされた場合, rkSlの通常ランクとなります.

伝達関数行列は状態空間表現に変換されます.

Sl が (正方) 多項式行列の場合, trzeros はその行列式の根を返します.

通常の状態空間システムの場合, trzeros は Emami-Naeni および Van Doorenの状態空間アルゴリズムを使用します.

D が可逆の場合, 伝送ゼロは逆システムA - B*inv(D)*Cの "A 行列"の固有値となります;

C*B が可逆の場合,伝送ゼロは N*A*Mの固有値となります. ただし,M*Neye(A)-B*inv(C*B)*Cのフルランク分解です;

多項式行列Dを有するシステムの場合, ゼロはシステム行列の行列式の根として計算されます.

注意: 計算されるゼロが常に信頼できるとは限りません. 特にゼロが重根の場合は注意を要します.

W1=ssrand(2,2,5);trzeros(W1)    //call trzeros
roots(det(systmat(W1)))         //roots of det(system matrix)
s=poly(0,'s');W=[1/(s+1);1/(s-2)];W2=(s-3)*W*W';[nt,dt,rk]=trzeros(W2);
St=systmat(tf2ss(W2));[Q,Z,Qd,Zd,numbeps,numbeta]=kroneck(St);
St1=Q*St*Z;rowf=(Qd(1)+Qd(2)+1):(Qd(1)+Qd(2)+Qd(3));
colf=(Zd(1)+Zd(2)+1):(Zd(1)+Zd(2)+Zd(3));
roots(St1(rowf,colf)), nt./dt     //By Kronecker form

参照

  • gspec — 行列ペンシルの固有値 (古い関数)
  • kroneck — 行列ペンシルのクロネッカー形式
Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Mar 03 11:00:55 CET 2011