Stateflow.EMFunction

Функция MATLAB в графике, состоянии, поле или функции

    Описание

    Используйте Stateflow.EMFunction объекты создать MATLAB® функции для алгоритмов кодирования, которые более легко описываются при помощи кода MATLAB вместо графического Stateflow® построения. Типовые приложения включают:

    • Ориентированные на матрицу вычисления

    • Анализ данных и визуализация

    Можно вызвать функцию MATLAB в действиях состояний и переходах. Для получения дополнительной информации смотрите Повторное использование код MATLAB путем Определения функций MATLAB.

    Создание

    Описание

    пример

    function = Stateflow.EMFunction(parent) создает Stateflow.EMFunction объект в вышестоящей диаграмме, состоянии, поле или функции.

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

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

    Родительский элемент для новой функции MATLAB в виде объекта Stateflow API одного из этих типов:

    Свойства

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

    Объекты API Stateflow имеют свойства, которые соответствуют значениям, которые вы устанавливаете в редакторе Stateflow. Чтобы получить доступ или изменить свойство, используйте запись через точку. Чтобы получить доступ или изменить несколько свойств для нескольких объектов API, используйте get и set функции, соответственно. Для получения дополнительной информации см. Изменение свойств и Вызов функций Объектов Stateflow.

    Содержимое

    Имя функции MATLAB в виде вектора символов.

    Пометьте для функции MATLAB в виде вектора символов.

    Код для функции MATLAB в виде вектора символов. Чтобы ввести несколько строк кода, вы можете:

    • Вызовите функцию MATLAB sprintf и используйте escape-последовательность \n вставить символы новой строки:

      str = sprintf('function y=f(x)\ny=x+1;\nend');
      function.Script = str;
    • Введите конкатенированное текстовое выражение, которое использует целое число 10 в качестве ASCII, эквивалентного из символа новой строки:

      str = ['function y=f(x)',10, ...
          'y=x+1;',10, ...
          'end'];
      function.Script = str;

    Закомментировать ли функцию MATLAB в виде числового или логической единицы (true) или 0 (false). Установка этого свойства к true эквивалентно щелчку правой кнопкой по функции MATLAB и выбору Comment Out. Для получения дополнительной информации смотрите Комментарий Объекты Stateflow в Графике.

    Это свойство доступно только для чтения.

    Комментируется ли функция MATLAB неявно в виде числового или логической единицы (true) или 0 (false). Функция MATLAB неявно комментируется, когда вы комментируете состояние, поле или функцию, которая содержит его.

    Текст комментария для функции MATLAB в виде вектора символов. Это свойство применяется только когда IsExplicitlyCommented свойством является true. В редакторе Stateflow, когда вы указываете на значок комментария на функции MATLAB, текст появляется как подсказка. Когда вы устанавливаете IsExplicitlyCommented свойство к false, значение CommentText возвращается к ''.

    Графический внешний вид

    Положение и размер функции MATLAB в виде четырехэлементного числового вектора из формы [left top width height].

    Это свойство доступно только для чтения.

    Пересекает ли функция MATLAB графически поле, состояние или функцию в виде числового или логической единицы (true) или 0 (false).

    Размер шрифта для функции MATLAB помечает в виде скаляра. StateFont.Size свойство графика, который содержит графическую функцию, устанавливает начальное значение этого свойства.

    Данные целочисленной и фиксированной точки

    Насыщают ли данные в функции MATLAB на целочисленном переполнении в виде числового или логической единицы (true) или 0 (false). Когда это свойство отключено, данные в функции переносятся на целочисленном переполнении. Для получения дополнительной информации смотрите Целочисленное переполнение Указателя для Данных о Графике.

    Это свойство применяется только когда ActionLanguage из графика, который содержит функцию, 'C'. В противном случае поведение данных зависит от значения SaturateOnIntegerOverflow свойство для графика.

    fimath по умолчанию свойства для функции MATLAB в виде одного из этих значений:

    • 'Same as MATLAB Default' — Используйте тот же fimath свойства как текущий fimath по умолчанию объект.

    • 'Other:UserSpecified' — Используйте InputFimath свойство задать fimath по умолчанию объект.

    Это свойство применяется только когда ActionLanguage из графика, который содержит функцию, 'C'. В противном случае поведение данных зависит от значения EmlDefaultFimath свойство для графика.

    fimath по умолчанию объект в виде вектора символов. Когда EmlDefaultFimath свойством для функции MATLAB является 'Other:UserSpecified', можно использовать это свойство для:

    • Введите выражение, которое создает fimath объект.

    • Введите имя переменной для fimath объект в рабочем пространстве MATLAB или рабочем пространстве модели.

    Это свойство применяется только когда ActionLanguage из графика, который содержит функцию, 'C'. В противном случае поведение данных зависит от значения InputFimath свойство для графика.

    Генерация кода

    Внешний вид функции MATLAB в сгенерированном коде в виде одного из этих значений:

    • 'Auto' — Внутреннее вычисление определяет внешний вид функции в сгенерированном коде.

    • 'Function' — Функция реализована как отдельная функция C.

    • 'Inline' — Вызовы функции заменяются кодом.

    Для получения дополнительной информации смотрите Встроенные Функции состояния в Сгенерированном коде (Simulink Coder).

    Иерархия

    Это свойство доступно только для чтения.

    Стройте диаграмму, который содержит функцию MATLAB в виде Stateflow.Chart объект.

    Это свойство доступно только для чтения.

    Подсредство просмотра для функции MATLAB в виде Stateflow.Chart, Stateflow.State, Stateflow.Box, или Stateflow.Function объект. Подсредство просмотра является графиком или субдиаграммой, где можно графически просмотреть функцию MATLAB.

    Это свойство доступно только для чтения.

    Машина, которая содержит функцию MATLAB в виде Stateflow.Machine объект.

    Это свойство доступно только для чтения.

    Местоположение родительского элемента функции MATLAB в иерархии модели в виде вектора символов.

    Идентификация

    Описание для функции MATLAB в виде вектора символов.

    Ссылка на документ для функции MATLAB в виде вектора символов.

    Пользовательский тег для функции MATLAB в виде данных любого типа.

    Это свойство доступно только для чтения.

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

    Это свойство доступно только для чтения.

    Уникальный идентификатор в виде целочисленного скаляра. В отличие от SSIdNumber, значение этого свойства повторно присвоено каждый раз, когда вы запускаете новый сеанс работы с MATLAB и можете быть переработаны после того, как объект удален.

    Функции объекта

    findИдентифицируйте заданные объекты в иерархии
    getChildrenИдентифицируйте дочерние элементы объекта
    getParentИдентифицируйте родительский элемент объекта
    dialogОткрытое диалоговое окно свойств
    isCommentedОпределите, комментируется ли графический объект
    viewЭкранный объект в редактировании среды
    highlightПодсветите графический объект
    fitToViewУвеличьте масштаб графического объекта

    Примеры

    свернуть все

    Добавьте функцию MATLAB в графике ch. Установите его метку на '[y1,y2] = f(x1,x2,x3)'.

    function = Stateflow.EMFunction(ch);
    function.LabelString = '[y1,y2] = f(x1,x2,x3)';
    Представлено до R2006a