org.mklab.tool.control
クラス Obsf

java.lang.Object
  上位を拡張 org.mklab.tool.control.Obsf

public class Obsf
extends Object

可観測部分と負可観測部分を分割するクラスです。

Observable-unobservable decomposition

バージョン:
$Revision: 1.23 $
作成者:
koga
関連項目:
Ctrf, Obsm

コンストラクタの概要
Obsf()
           
 
メソッドの概要
static List<Matrix> obsf(Matrix A, Matrix B, Matrix C)
          可観測部分と不可観測部分に分解したシステム表現を返します。
static List<Matrix> obsf(Matrix A, Matrix B, Matrix C, double tolerance)
          可観測部分空間の次数を決定するために許容誤差tol を用いる。
static List<Matrix> obsf(Matrix A, Matrix B, Matrix C, NumericalScalar<?> tolerance)
          可観測部分空間の次数を決定するために許容誤差tol を用いる。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Obsf

public Obsf()
メソッドの詳細

obsf

public static List<Matrix> obsf(Matrix A,
                                Matrix B,
                                Matrix C)
可観測部分と不可観測部分に分解したシステム表現を返します。

もし、rank([[A][C]]) < Rows(A)なら、 相似変換z = T xにより

 Ab = T*A*T# , Bb = T*B , Cb = C*T#.
 
 [Ano|A12] [Bno] Ab = [---+---], Bb = [---], Cb = [0|Co]. [ 0 |Ao ] [Bo ] 
のように変換できます。ただし、 (Co,Ao)は可観測であり、
 -1 -1 Co(sI-Ao)Bo = C(sI-A)B. 
です。

パラメータ:
A - 元のA行列
B - 元のB行列
C - 元のC行列
戻り値:
{Ab, Bb, Cb, T, K} (分割されたシステム, 変換行列) decompostion

obsf

public static List<Matrix> obsf(Matrix A,
                                Matrix B,
                                Matrix C,
                                double tolerance)
可観測部分空間の次数を決定するために許容誤差tol を用いる。

パラメータ:
A - 元のA行列
B - 元のB行列
C - 元のC行列
tolerance - 許容誤差
戻り値:
{Ab, Bb, Cb, T, K} (分割されたシステム, 変換行列) decomposition

obsf

public static List<Matrix> obsf(Matrix A,
                                Matrix B,
                                Matrix C,
                                NumericalScalar<?> tolerance)
可観測部分空間の次数を決定するために許容誤差tol を用いる。

パラメータ:
A - 元のA行列
B - 元のB行列
C - 元のC行列
tolerance - 許容誤差
戻り値:
{Ab, Bb, Cb, T, K} (分割されたシステム, 変換行列) decomposition