Переменные состояния





| Векторизован |
в палитре на схеме

Описание

Блок реализует описание многомерной линейной динамической системы, записанной в матричной форме:

где:
  • A, B, C, D – матрицы: системы, входа, выхода и обхода, соответственно
  • x(t)– вектор переменных состояния (размерностью [Nx ])
  • u(t) – вектор входа (размерностью [Nu ])
  • y(t) – вектор выхода, (размерностью [Ny ])

Размерность матрицы A - [Nx ×Nx ].

Размерность матрицы B - [Nu ×Nx ].

Размерность матрицы C - [Nx ×Ny ].

Размерность матрицы D - [Nu ×Ny ].

1-е число в квадратных скобках – количество столбцов, 2-е число – количество строк. Обязательное условие: Nx ≥Ny .

Вход и выход блока – векторные сигналы (размерностью Nu и Ny , соответственно).

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

Имя Описание Тип линии связи
inport Входной сигнал, размерностью Nu . Математическая

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

Имя Описание Тип линии связи
outport Выходной преобразованный сигнал, размерностью Ny . Математическая

Свойства

Название Имя Описание По умолчанию Тип данных
Число переменных состояния xc Размерность Nx квадратной матрицы A. 2 Целое
Число входных воздействий uc Размерность входа Nu . 1 Целое
Число выходов yc Размерность выхода Ny . 1 Целое
Матрица A(Nx*Nx) A Квадратная матрица системы. [[-1 , 1];[-1 , 0]] Матрица
Матрица B(Nu*Nx) B Матрица входа. [[1 , 0]] Матрица
Матрица C(Nx*Ny) C Матрица выхода. [[0];[1]] Матрица
Матрица D(Nu*Ny) D Матрица обхода. [[0]] Матрица
Начальные условия (Nx) y0 Вектор начальных условий, размерностью Nx . [0 , 0] Массив

Параметры

Название Имя Описание (опционально) Тип данных
Динамические переменные xdif Внутренние переменные состояния блока. Массив
Производные fdif Значения производных внутренних переменных состояния блока. Массив

Промпт

//Описание блока, реализующего описание многомерной линейной
//динамической системы, записанной в матричной форме:
//dx(t)/dt = A·x(t) + B·u(t)
//y(t) = C·x(t) + D·u(t)
// A, B, C, D - матрицы: системы, входа, выхода и обхода, соответственно
// x(t) - вектор переменных состояния (размерностью [Nx])
// u(t) - вектор входа (размерностью [Nu])
// y(t) - вектор выхода (размерностью [Ny])
//Размерность матрицы A - [Nx×Nx]
//Размерность матрицы B - [Nu×Nx]
//Размерность матрицы C - [Nx×Ny]
//Размерность матрицы D - [Nu×Ny]
//1-е число в квадратных скобках - количество столбцов, 2-е число - количество строк
//Обязательное условие: Nx ≥ Ny
//Вход и выход блока - векторные сигналы (размерностью Nu и Ny, соответственно)
// xc - число переменных состояния. Размерность Nx квадратной матрицы A.
//По умолчанию равен 2
// uc - число входных воздействий. Размерность входа Nu. По умолчанию равен 1
// yc - число выходов. Размерность выхода Ny. По умолчанию равен 1
// A - матрица A(Nx*Nx). Квадратная матрица системы. По умолчанию [[-1 , 1];[-1 , 0]]
// B - матрица B(Nu*Nx). Матрица входа. По умолчанию [[1 , 0]]
// C - матрица C(Nx*Ny). Матрица выхода. По умолчанию [[0];[1]]
// D - матрица D(Nu*Ny). Матрица обхода. По умолчанию [[0]]
// y0 - начальные условия (Nx). Вектор начальных условий, размерностью Nx.
//По умолчанию [0 , 0]
//Параметры:
// xdif - динамические переменные. Внутренние переменные состояния блока
// fdif - производные. Значения производных внутренних переменных состояния блока
//Входы: inport - входной сигнал, размерностью Nu
//Выходы: outport - выходной преобразованный сигнал, размерностью Ny

block: (
  type = "Переменные состояния",
  points=[(-200 , 0),(-184 , 0),(-200 , -16),(408 , 308)],
  xc = 2,
  uc = 1,
  yc = 1,
  A = [[-1 , 1];[-1 , 0]],
  B = [[1 , 0]],
  C = [[0];[1]],
  D = [[0]],
  y0 = [0 , 0]
  ),