ssform

Быстрая настройка структуры модели в пространстве состояний

Синтаксис

sys1 = ssform(sys,Name,Value)

Описание

sys1 = ssform(sys,Name,Value) задает тип параметризации и присутствуют ли сквозное соединение и динамика воздействия для модели в пространстве состояний sys с помощью одного или нескольких аргументов пары Name,Value.

Входные параметры

sys

Модель в пространстве состояний

Аргументы в виде пар имя-значение

Задайте пары, разделенные запятой аргументов Name,Value, где Name является именем аргумента, и Value является соответствующим значением. Имя должно находиться внутри одинарных кавычек (' '). Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

'Form'

Задайте структуру A, B и матриц C как одно из следующих значений:

  • 'free'

    Все записи A, B, C освобождены

  • 'companion'

    Сопутствующая форма модели, где характеристический полином появляется в крайне правом столбце матрицы А состояния

  • 'modal'

    Модальная форма разложения, где матрица А состояния является диагональю блока. Каждый блок соответствует действительной или комплексно-сопряженной паре полюсов.

    Вы не можете использовать это значение для моделей с повторными полюсами.

  • 'canonical'

    Каноническая форма наблюдаемости A, B, и матрицы C, как описано в [1].

'Feedthrough'

Задайте, имеет ли модель прямое сквозное соединение от входа u (t) к выводу y (t), (являются ли элементы матрицы D ненулевыми).

Должен быть логический вектор (true или false) длины, равной количеству входных параметров (Nu).

Feedthrough(i) = false обнуляет sys.Structure.D.Value(:,i) и sys.Structure.D.Free(:,i) к false.

Feedthrough(i) = true устанавливает sys.Structure.D.Free(:,i) на true.

Примечание

Определение этой опции для ранее предполагаемой модели заставляет информацию о ковариации параметра модели быть потерянной. Используйте translatecov, чтобы повторно вычислить ковариацию.

'DisturbanceModel'

Задайте, оценить ли шумовой компонент модели, заданной как одно из следующих значений:

  • 'none'

    Значение матрицы K фиксируется, чтобы обнулить.

  • 'estimate'

    Матрица K обработана как свободный параметр

Примечание

Определение этой опции для ранее предполагаемой модели заставляет информацию о ковариации параметра модели быть потерянной. Используйте translatecov, чтобы повторно вычислить ковариацию.

Выходные аргументы

sys1

Модель в пространстве состояний со сконфигурированной параметризацией, сквозным соединением и динамикой воздействия

Примеры

свернуть все

Создайте модель в пространстве состояний.

rng('default'); 
A = randn(2) - 2*eye(2);
B = randn(2,1); 
C = randn(1,2); 
D = 0;
K = randn(2,1);
model = idss(A,B,C,D,K,'Ts',0);

Модель в пространстве состояний имеет свободную параметризацию и никакое сквозное соединение.

Преобразуйте модель в каноническую форму наблюдаемости.

model1 = ssform(model,'Form','canonical');

Загрузите данные об оценке.

load iddata1 z1;

Создайте модель в пространстве состояний.

rng('default'); 
A = randn(2) - 2*eye(2);
B = randn(2,1); 
C = randn(1,2); 
D = 0;
K = randn(2,1);
model = idss(A,B,C,D,K,'Ts',0);

Модель в пространстве состояний имеет свободную параметризацию и никакое сквозное соединение.

Преобразуйте модель в каноническую форму наблюдаемости и задайте, чтобы оценить ее проходное поведение.

model1 = ssform(model,'Form','canonical','Feedthrough', true);

Оцените параметры модели.

model2 = ssest(z1,model1);

Альтернативы

Используйте свойство Structure модели idss задать параметризацию, сквозное соединение и динамику воздействия путем изменения Value и атрибутов Free A, B, C, D и параметров K.

Ссылки

[1] Ljung, L. System Identification: Теория Для Пользователя, Второго Выпуска, Приложения 4A, стр 132-134, Верхнего Сэддл-Ривер, Нью-Джерси: Prentice Hall, 1999.

Представленный в R2012b