модель

Выполните конкретную фазу моделирования модели

Синтаксис

[sys,x0,str,ts] = model([],[],[],'sizes');
[sys,x0,str,ts] = model([],[],[],'compile');
outputs = model(t,x,u,'outputs');
derivs = model(t,x,u,'derivs');
dstates = model(t,x,u,'update');
model([],[],[],'term');

Описание

Команда model выполняет определенную фазу моделирования модели Simulink®, именем которой является model. Последний аргумент команды (flag) задает фазу моделирования, которое будет выполняться. Смотрите Фазы Моделирования в Динамических системах для описания шагов что использование программного обеспечения Simulink, чтобы моделировать модель.

Эта команда игнорирует эффекты изменений состояния и условного выполнения. Поэтому это не подходит для моделей, которые имеют такую логику. Используйте эту команду для моделей, которые могут быть представлены как простые динамические системы. Такие системы должны удовлетворить эти требования.

  • Все состояния в модели должны быть встроенными типами данных нешины. Для обсуждения встроенных типов данных займитесь Типами данных в Simulink.

  • При использовании векторный формат, чтобы задать состояние, эта команда может получить доступ только к некомплексным состояниям типа данных double.

  • Существует минимальная сумма логики состояния (Stateflow, условно выполняемые подсистемы и т.д.)

  • Модели не являются смешанными моделями предметной области. Таким образом, большинство блоков в модели является встроенными блоками Simulink и не включает написанные пользователем S-функции или блоки от другого Сима* продукты.

Для моделей, которые не выполняют эти требования, с помощью этой команды, может заставить Simulink, приводят к результатам, которые могут только быть интерпретированы дальнейшим анализом и упрощением модели.

Примечание

Переменная состояния x может быть представлена в структуре, а также векторных форматах. Переменная следует за ограничениями формата, в котором она задана.

Эта команда также не предназначается, чтобы использоваться, чтобы запустить постепенную модель, например, отладить модель. Используйте отладчик Simulink, если необходимо исследовать промежуточные результаты отладить модель.

Аргументы

sys

Вектор данных размера модели:

  • sys(1) = количество непрерывных состояний

  • sys(2) = количество дискретных состояний

  • sys(3) = количество выходных параметров

  • sys(4) = количество входных параметров

  • sys(5) = зарезервированный

  • sys(6) = флаг прямого сквозного соединения (1 = да, 0 = не)

  • sys(7) = количество частот дискретизации (= количество строк в ts)

x0

Вектор, содержащий начальные условия состояний системы

str

Вектор имен блоков сопоставлен с состояниями модели. Имена состояния и начальные условия появляются в том же порядке в str и x0, соответственно.

ts

m-by-2 матрица, содержащая частоту дискретизации (период, смещение) информация

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

Выходные параметры модели на временном шаге t.

derivs

Производные непрерывных состояний модели во время t.

dstates

Состояния модели во время t, возвращенный или как структура или как массив. Simulink возвращает структуру, когда модель имеет состояния, и x является или пустой ([]) или в формате структуры. В противном случае Simulink возвращает массив.

  • Если тип возврата является вектором или массивом, Simulink возвращает действительные двойные дискретные состояния только.

  • Если тип возврата является структурой, Simulink возвращает структуру, которая содержит и непрерывные и дискретные состояния встроенных типов только. Невстроенные типы не использованы.

t

Временной шаг, заданный как действительный дважды в скалярном формате.

x

Вектор состояния, заданный как действительный дважды в структуре или векторном формате.

u

Вводы, заданные как действительный дважды в векторном формате.

флаг

Спецификация фазы моделирования, которая будет выполняться:

  • 'sizes' выполняет фазу вычисления размера моделирования. Эта фаза определяет размеры входных параметров модели, выходных параметров, вектора состояния, и т.д.

  • 'compile' выполняет фазу компиляции моделирования. Фаза компиляции распространяет атрибуты и частоты дискретизации сигнала.

  • 'update' вычисляет следующие значения дискретных состояний модели.

  • 'outputs' вычисляет выходные параметры блоков модели во время t.

  • 'derivs' вычисляет производные непрерывных состояний модели на временном шаге t.

  • 'term' заставляет программное обеспечение Simulink отключать моделирование модели.

Примечание

output, update и флаги derivs допустимы только для однозадачных моделей. Для получения дополнительной информации об однозадачности и многозадачности, смотрите Режимы Управления задачами (Simulink Coder).

Примеры

Следующая команда выполняет фазу компиляции модели vdp, которая идет с программным обеспечением Simulink.

vdp([], [], [], 'compile')

Следующая команда отключает моделирование, инициируемое в предыдущем примере.

vdp([], [], [], 'term')

Примечание

Simulink не позволяет вам закрыть модель, в то время как он компилирует или моделирует. Для всех фаз кроме фазы 'sizes', прежде, чем закрыть модель, необходимо вызвать образцовую команду с аргументом 'term'.

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

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

Была ли эта тема полезной?