Векторы и матрицы в диаграммах Stateflow

Vectors и matrices комбинируют скалярные данные в один объект многомерных данных. Можно изменить отдельные элементы или выполнить арифметику на целых векторах и матрицах. Для получения дополнительной информации смотрите Поддерживаемые Операции для Векторов и Матриц.

Задайте векторные и матричные данные

  1. Добавьте, что объект данных к вашему графику, как описано в Добавляют Данные Stateflow.

  2. Установите свойство Size для объекта данных как размерности вектора или матрицы. Смотрите Задают Размер Данных Stateflow. Например:

    • Чтобы задать 4 1 вектор-столбец, введите 4.

    • Чтобы задать вектор-строку 1 на 4, введите [1 4].

    • Чтобы задать 3х3 матрицу, введите [3 3].

  3. Установите свойство Initial value для объекта данных. Смотрите Начальное значение.

    • Чтобы задать значение нуля для всех элементов вектора или матрицы, оставьте Initial value пустым. Если вы не задаете начальное значение, все элементы инициализируются к 0.

    • Чтобы задать то же значение для всех элементов вектора или матрицы, введите скалярное значение. Все элементы инициализируются к скалярному значению, которое вы задаете.

    • Чтобы задать различное значение для каждого элемента вектора или матрицы, введите массив вещественных значений. Например:

      • Чтобы инициализировать 4 1 вектор-столбец, можно ввести [1; 2; 3; 4].

      • Чтобы инициализировать вектор-строку 1 на 4, можно ввести [1 2 3 4].

      • Чтобы инициализировать 3х3 матрицу, можно ввести [1 2 3; 4 5 6; 7 8 9].

  4. Определите имя, осциллограф, базовый тип и другие свойства для объекта данных, как описано в Set Data Properties.

Можно задать размер и начальное значение вектора или матрицы при помощи выражения. Выражения могут содержать соединение числовых значений, констант, параметров, переменных, арифметических операций и вызовов функций MATLAB. Для получения дополнительной информации смотрите Specify Data Properties при помощи Выражений MATLAB.

Где можно использовать векторы и матрицы

Можно задать векторы и матрицы на этих уровнях Stateflow® иерархия:

  • Графики

  • Субдиаграммы

  • Состояния

  • Функции

Можно использовать векторы и матрицы, чтобы задать:

  • Входные данные

  • Выходные данные

  • Локальные данные

  • Входные параметры функции

  • Функциональные выходные параметры

Можно также использовать векторы и матрицы в качестве аргументов для:

  • Состояния активности

  • Действия перехода

  • MATLAB® функции

  • Функции таблицы истинности

  • Графические функции

  • Simulink® функции

  • Измените операторы обнаружения

Правила для векторов и матрицы в диаграммах Stateflow

Используйте операнды равных размерностей для поэлементных операций

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

Не задавайте векторы и матрицы с ml Базовый тип

ml базовый тип поддерживает только скалярные данные. Если вы задаете вектор или матрицу с ml базовый тип, график генерирует ошибку, когда вы симулируете модель. Для получения дополнительной информации см. ml Тип данных.

Не используйте комплексные числа, чтобы установить начальные значения векторов и матриц

Если вы инициализируете элемент вектора или матрицы при помощи комплексного числа, график генерирует ошибку, когда вы симулируете модель. Можно установить значения векторов и матриц к комплексным числам после инициализации. Для получения дополнительной информации смотрите Комплексные данные в диаграммах Stateflow.

Не используйте векторы и матрицы во временных логических операторах

Поскольку время является скаляром, вы не можете использовать вектор или матрицу в качестве аргумента для временного логического оператора. Для получения дополнительной информации смотрите Управление выполнением диаграммы при помощи Временной Логики.

Похожие темы