StateFlow   ОКМ   ДМ   экономическая информатика   визуальные среды - 4GL   Теория и практика обработки информации

Cистема численно-математического моделирования MatLab

Stateflow - Simulink

Векторизация в StateFlow

Рассмотрим два примера, поясняющих использование векторов и матриц в качестве входных и выходных переменных Stateflow-диаграмм. Необходимо отметить, что поддержка двухмерных матриц как входных и выходных переменных появляется впервые в версии Stateflow 5.0.

Для запуска соответствующих моделей в Help-навигаторе выберем закладку Demos, а далее найдем папку Stateflow-примеров с названием Matrix I/O (матричный ввод-вывод) .

Первый пример называется Vectorization. Как следует из описания этого примера, приведенного в окне справа, Stateflow позволяет работать с входными данными в виде векторов. Откроем эту модель.

В качестве входных величин data1 и data2 используются векторные сигналы блоков Constant и Constant1, т.е. векторы [1 2 3 4] и [2 4 6 8] соответственно. Описание этих переменных можно увидеть, открыв окно Stateflow Explorer.

Последовательность выполняемых над входными переменными действий определяется Stateflow-диаграммой Chart.

Как видно из рисунка, действием единственного безусловного перехода этой диаграммы является операция output=data1*data2+1; , что на языке С равносильно поэлементному умножению векторов (вычислению скалярного их произведения) и прибавлению к полученному результату единицы. Чтобы у пользователей не возникло сомнения, что речь идет именно о поэлементной, а не о матричной операции, в свободном поле диаграммы размещен эквивалентный код на языке MATLAB, в котором поэлементное умножение задается парой символов " .* ". В результате выполнения модели векторный выход Output примет значение [3 9 19 33], что отображается в окне блока Scope.

Векторизация вычислений по праву считается сильным местом пакета MATLAB, устраняя необходимость в использовании операторов DO или FOR и позволяя получить более быстрый и эффективный код. Данный пример показывает, что в Stateflow эта возможность также имеет место.

Второй пример называется Matrix Input and Output.

Этот пример демонстрирует способность Stateflow 5.0 принимать матричные сигналы от Simulink и возвращать ему матричные сигналы.

Входными сигналами являются матрицы data1=[1 2; 3 4] и data2=[3 2; 1 4]. Описание этих переменных можно увидеть, открыв окно Stateflow Explorer.

Последовательность действий, выполняемых над входными переменными, определяется Stateflow-диаграммой Chart.

Элемент матрицы final_out[i][j] определяется как сумма произведений элементов i-ой строки матрицы data1 на соответствующие элементы j-го столбца матрицы data2. В результате получаем выходную матрицу final_out, являющуюся произведением матриц data1 и data2. Поскольку в данном примере чтобы выполнить вычисления используется flow chart (потоковая диаграмма или блок-схема) и не используются промежуточные состояния, продолжительность времени моделирования может составлять всего один шаг. Результат выполнения модели можно видеть на следующем рисунке. В Simulink возвращен матричный сигнал.

StateFlow   ОКМ   ДМ   экономическая информатика   визуальные среды - 4GL   Теория и практика обработки информации

Знаете ли Вы, что устойчивость оптимального плана - это свойство математических моделей, имеющих форму задачи линейного программирования, состоящее в неизменности двойственных оценок ограничений при изменениях свободных членов ограничений в определённых пределах и в неизменности значений переменных при изменениях параметров целевой функции в определённых пределах.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution