Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2025.0.0 - 日本語


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

参照

  • spec — 行列とペンシルの固有値
  • kroneck — 行列ペンシルのクロネッカー形式
Report an issue
<< svplot Frequency Domain Stability >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Thu Oct 24 11:17:41 CEST 2024