State-Space

Реализуйте линейную систему в пространстве состояний

  • Библиотека:
  • Simulink / Непрерывный

  • State-Space block

Описание

Блок State-Space реализует систему, поведение которой вы задаете как

x˙=Ax+Buy=Cx+Dux|t=t0=x0,

где x является вектором состояния, u является входным вектором, y является выходным вектором, и x 0 является начальным условием вектора состояния. A, B, C, и матрицы D могут быть заданы или как разреженные матрицы или как плотные матрицы. Коэффициенты матрицы должны иметь эти характеристики:

  • A должен быть n-by-n матрица, где n является количеством состояний.

  • B должен быть n-by-m матрица, где m является количеством входных параметров.

  • C должен быть r-by-n матрица, где r является количеством выходных параметров.

  • D должен быть r-by-m матрица.

В общем случае блок имеет один входной порт и один выходной порт. Количество строк в C или матрице D совпадает с шириной выходного порта. Количество столбцов в B или матрице D совпадает с шириной входного порта. Если вы хотите смоделировать автономную линейную систему без входных параметров, установите B и матрицы D пустеть. В этом случае блок действует как исходный блок без входного порта и одного выходного порта, и реализует следующую систему:

x˙=Axy=Cxx|t=t0=x0.

Программное обеспечение Simulink® преобразует матрицу, содержащую нули к разреженной матрице для эффективного умножения.

Порты

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

развернуть все

Входной вектор с действительным знаком типа double, где ширина равняется количеству столбцов в матриц D и B. Для получения дополнительной информации см. Описание.

Типы данных: double

Вывод

развернуть все

Выходной вектор с действительным знаком типа данных double, с шириной равняются количеству строк в матрицах D и C. Для получения дополнительной информации см. Описание.

Типы данных: double

Параметры

развернуть все

Задайте коэффициент матрицы A, как n с действительным знаком-by-n матрица, где n является количеством состояний. Для получения дополнительной информации о коэффициентах матрицы см. Описание.

Программируемое использование

Параметры блоков: A
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица | разреженная матрица
Значение по умолчанию: '1'

Задайте коэффициент матрицы B, как n с действительным знаком-by-m матрица, где n является количеством состояний и m, является количеством входных параметров. Для получения дополнительной информации о коэффициентах матрицы см. Описание.

Программируемое использование

Параметры блоков: B
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица | разреженная матрица
Значение по умолчанию: '1'

Задайте коэффициент матрицы C как r с действительным знаком-by-n матрица, где r является количеством выходных параметров, и n является количеством состояний. Для получения дополнительной информации о коэффициентах матрицы см. Описание.

Программируемое использование

Параметры блоков: C
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица | разреженная матрица
Значение по умолчанию: '1'

Задайте коэффициент матрицы D как r с действительным знаком-by-m матрица, где r является количеством выходных параметров, и m является количеством входных параметров. Для получения дополнительной информации о коэффициентах матрицы см. Описание.

Программируемое использование

Параметры блоков: D
Ввод: вектор символов, строка
Значения: скаляр | вектор | матрица | разреженная матрица
Значение по умолчанию: '1'

Задайте вектор начального состояния.

Ограничения

Начальными условиями этого блока не может быть inf или NaN.

Программируемое использование

Параметры блоков: X0
Ввод: вектор символов, строка
Значения: скаляр | вектор
Значение по умолчанию: '0'

Уровень приспособляемости матриц пространства состояний (A, B, C, и D) для ускоренных режимов симуляции и развернутых симуляций с помощью Simulink Compiler™. Когда установлено в Auto, Simulink выбирает соответствующий уровень приспособляемости параметра.

Для коэффициентов разреженной матрицы, установленных параметр на Optimized позволить приспособляемость ненулевых элементов при хранении шаблона и количества ненулевых элементов постоянными. Установите этот параметр на Unconstrained чтобы позволить всем элементам быть настраиваемыми, пока количество ненулевых элементов сохранено постоянным, то есть, можно изменить шаблон разреженной матрицы.

Для плотных коэффициентов матрицы выберите Optimized чтобы позволить приспособляемость всех элементов матрицы, обеспечил, количество ненулевых элементов, первоначально указанных в матрице, сохранено постоянным. Установите этот параметр на Unconstrained позволить полную приспособляемость всех элементов матрицы.

Примечание

Настроить матрицу D блока, когда D = 0, необходимо включить параметр Allow non-zero values for D matrix initially specified as zero.

Программируемое использование

Параметры блоков: ParameterTunability
Ввод: вектор символов | строка
Значения: 'Auto' | 'Optimized' | 'Unconstrained'
Значение по умолчанию: 'Auto'

Позвольте этому параметру поддержать приспособляемость D даже когда D = 0.

Примечание

Включение этого параметра включает прямое сквозное соединение для блока State-Space.

Программируемое использование

Параметры блоков: AllowTunableDMatrix
Ввод: вектор символов | строка
Значения: 'off' | 'on'
Значение по умолчанию: 'off'

Абсолютная погрешность для вычислительного блока утверждает в виде положительного, с действительным знаком, скалярного или векторного. Чтобы наследовать абсолютную погрешность от Параметров конфигурации, задайте auto или -1.

  • Если вы вводите действительный скаляр, то то значение заменяет абсолютную погрешность в диалоговом окне Configuration Parameters для вычисления всех состояний блока.

  • Если вы вводите вектор действительных чисел, то размерность того вектора должна совпадать с размерностью непрерывных состояний в блоке. Эти значения заменяют абсолютную погрешность в диалоговом окне Configuration Parameters.

  • Если вы вводите auto или –1, затем Simulink использует значение абсолютной погрешности в диалоговом окне Configuration Parameters (см. Панель Решателя) вычислить состояния блока.

Программируемое использование

Параметры блоков: AbsoluteTolerance
Ввод: вектор символов, строка
Значения: 'auto'| '-1' | любой положительный скаляр с действительным знаком или вектор
Значение по умолчанию: 'auto'

Присвойте уникальное имя каждому состоянию. Если это поле является пробелом (' '), никакое присвоение имени не происходит.

  • Чтобы присвоить имя к одному состоянию, введите имя между кавычками, например, 'position'.

  • Чтобы присвоить имена к нескольким состояниям, введите разграниченный запятой список, окруженный фигурными скобками, например, {'a', 'b', 'c'}. Каждое имя должно быть уникальным.

  • Чтобы присвоить имена состояния с переменной в рабочей области MATLAB®, введите переменную без кавычек. Переменная может быть вектором символов, строкой, массивом ячеек или структурой.

Ограничения

  • Имена состояния применяются только к выбранному блоку.

  • Количество состояний должно разделиться равномерно среди количества имен состояния.

  • Можно задать меньше имен, чем состояния, но вы не можете задать больше имен, чем состояния.

    Например, можно задать два имени в системе с четырьмя состояниями. Имя применяется к первым двум состояниям и второму имени к последним двум состояниям.

Программируемое использование

Параметры блоков: ContinuousStateAttributes
Ввод: вектор символов, строка
Значения: ' ' | пользовательский
Значение по умолчанию: ' '

Примеры модели

Характеристики блока

Типы данных

double

Прямое сквозное соединение

yes

Многомерные сигналы

no

Сигналы переменного размера

no

Обнаружение пересечения нулем

no

Расширенные возможности

Смотрите также

|

Представлено до R2006a