модель

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

Синтаксис

[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

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