Форма лестницы «Расчетная наблюдаемость»
[Abar,Bbar,Cbar,T,k] = obsvf(A,B,C)
obsvf(A,B,C,tol)
Если матрица наблюдаемости (A,C) имеет ранг r ≤ n, где n - размер A, тогда существует такое преобразование подобия, что
= CTT
где Т - унитарная, а преобразованная система имеет лестничную форму с ненаблюдаемыми режимами, если таковые имеются, в левом верхнем углу.
[0 Co]
где (Co, Ao) является наблюдаемым, а собственные значения Ano являются ненаблюдаемыми режимами.
[Abar,Bbar,Cbar,T,k] = obsvf(A,B,C) разлагает систему state-space матрицами A, B, и C в форму лестницы для наблюдения Abar, Bbar, и Cbar, как описано выше. T - матрица преобразования подобия и k - вектор длиной n, где n - число состояний в A. Каждая запись k представляет количество наблюдаемых состояний, выведенных на каждый шаг вычисления матрицы преобразования [1]. Число ненулевых элементов в k указывает, сколько итераций было необходимо для расчета T, и sum(k) - количество состояний в Ao, наблюдаемая часть Abar.
obsvf(A,B,C,tol) использует допуск tol при вычислении наблюдаемых/ненаблюдаемых подпространств. Если допуск не указан, по умолчанию устанавливается значение 10*n*norm(a,1)*eps.
Сформировать форму лестницы наблюдаемости
A =
1 1
4 -2
B =
1 -1
1 -1
C =
1 0
0 1
путем ввода
[Abar,Bbar,Cbar,T,k] = obsvf(A,B,C)
Abar =
1 1
4 -2
Bbar =
1 1
1 -1
Cbar =
1 0
0 1
T =
1 0
0 1
k =
2 0
obsvf реализует алгоритм лестницы [1] путем вызова ctrbf и используя двойственность.
[1] Розенброк, М. М., State-Space and Multivariable Theory, Джон Уайли, 1970.