Создайте блок-схемы при помощи Pattern Wizard

Pattern Wizard является утилитой, которая генерирует общие шаблоны блок-схемы для использования в графических функциях и графиках. Pattern Wizard предлагает нескольким преимуществам вручную создание блок-схем. Pattern Wizard:

  • Генерирует шаблоны итерационного цикла и общая логика.

  • Продвигает непротиворечивость в геометрии и размещении через шаблоны.

  • Упрощает хранение и многократное использование шаблонов от центрального расположения.

  • Позволяет вставлять шаблоны в существующую блок-схему.

Pattern Wizard генерирует блок-схемы, геометрия которых и размещение выполняют инструкции из MathWorks Advisory Board (MAB). Можно настроить блок-схему путем изменения условий и действий или путем вставки дополнительных логических шаблонов. Можно также сохранить блок-схему как пользовательский шаблон в Pattern Wizard для более позднего повторного использования.

Например, предположите, что вы хотите использовать Pattern Wizard, чтобы создать графическую функцию для итерации по верхнему треугольнику двумерной матрицы. Функция состоит из два, вложил for циклы, в который индекс строки i всегда меньше чем или равно индексу столбца j. При помощи Pattern Wizard вы можете:

  1. Создайте блок-схему для внешнего контура, который выполняет итерации по индексу строки i. Смотрите создают допускающие повторное использование блок-схемы.

  2. Расширьте блок-схему путем вставки внутреннего цикла, который выполняет итерации по индексу столбца j. Смотрите вставляют логические шаблоны в существующие блок-схемы.

  3. Сохраните блок-схему как пользовательский шаблон в Pattern Wizard. Смотрите Сохраняют Пользовательские Шаблоны Блок-схемы.

  4. Снова используйте пользовательский шаблон в графической функции. Смотрите Повторное использование Пользовательские Шаблоны Блок-схемы.

Создайте допускающие повторное использование блок-схемы

Чтобы создать блок-схему, на вкладке Modeling, выбирают шаблон из галереи Pattern. Выборы шаблона включают:

  • If, If-Else, If-Elseif и другие вложенные шаблоны решения.

  • For, While и шаблоны цикла DoWhile.

  • Переключите шаблоны максимум с четырьмя случаями.

  • Пользовательские шаблоны, что вы сохраненный для более позднего повторного использования.

  • Шаблоны, которые вы задаете в MATLAB® .m файл.

Диалоговое окно Pattern предлагает вам условия и действия, характерные для шаблона, который вы выбираете. Для получения дополнительной информации о шаблонах блок-схемы смотрите MAB-совместимые Шаблоны от Pattern Wizard.

Например, чтобы создать внешний for цикл в верхнем треугольном шаблоне итератора:

  1. На вкладке Modeling выберите Pattern> For Loop.

  2. В диалоговом окне Pattern задайте инициализатор, тест цикла и подсчет выражений для итерации через первую размерность матрицы:

  3. Нажмите OK. Pattern Wizard генерирует эту блок-схему.

Чтобы завершить верхний треугольный шаблон итератора, вставьте второй for цикл вдоль вертикального перехода в этой блок-схеме.

Вставьте логические шаблоны в существующие блок-схемы

Используйте Pattern Wizard, чтобы добавить цикл или расширения логики решения существующей блок-схемы. Выберите имеющий право вертикальный переход и выберите шаблон из галереи Pattern. Опции включают решение, цикл и шаблоны переключателя. Диалоговое окно Pattern предлагает вам условия и действия, характерные для шаблона, который вы выбираете.

Например, чтобы добавить второй цикл в верхнем треугольном шаблоне итератора:

  1. В Stateflow® Редактор, от внешнего for шаблон цикла, выбор вертикальный переход пометил {action1}.

  2. На вкладке Modeling выберите Pattern> For Loop.

  3. В диалоговом окне Pattern задайте инициализатор, тест цикла и подсчет выражений для итерации через второе измерение матрицы. Выражение инициализатора гарантирует, что i никогда не превышает j. Также начните действия, которые получают каждый элемент в верхнем треугольнике матрицы.

  4. Нажмите OK. Pattern Wizard добавляет второй цикл в блок-схему.

  5. Сохраните модель, содержащую шаблон.

Инструкции для вставки логических шаблонов

Когда вы создаете логические расширения:

  • Можно выбрать только один переход, чтобы расширить за один раз. Выбранный переход должен быть точно вертикальным и иметь целевое соединение.

  • Можно расширить только блок-схемы, созданные Pattern Wizard.

  • Диаграмма Stateflow, содержащая блок-схему, может содержать только соединения и переходы. График не может содержать другие объекты, такие как состояния, функции или таблицы истинности.

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

  • Вы не можете выбрать пользовательский шаблон в качестве расширения.

Если ваш выбор не имеет право на вставку, когда вы выбираете шаблон из галереи Pattern, вы видите сообщение вместо опций шаблона.

СообщениеПроблема
Выберите вертикальный переходВы не выбрали вертикальный переход.
Выбранный переход должен быть точно вертикальнымВы выбрали переход, но это не вертикально.
Выберите только один вертикальный переходВы выбрали больше чем один переход.
Редактор должен содержать только переходы и соединенияСуществуют другие объекты, такие как состояния, функции или таблицы истинности, в графике.

Сохраните пользовательские шаблоны блок-схемы

Используйте Pattern Wizard, чтобы сохранить шаблоны блок-схемы в центральной части, и затем легко получить их для повторного использования в графических функциях и графиках. Выберите блок-схему с шаблоном, что вы хотите сохранить и выбрать Pattern> Save As Pattern.

Например, предположите, что вы хотите сохранить верхний треугольный шаблон итератора для более позднего повторного использования:

  1. Создайте папку для хранения ваших пользовательских шаблонов. См. Инструкции для Создания Пользовательской Папки Шаблона.

  2. В редакторе Stateflow выберите верхнюю треугольную блок-схему итератора.

  3. На вкладке Modeling выберите Pattern> Save As Pattern.

  4. Если вы не определяли пользовательскую папку шаблона, Pattern Wizard предлагает вам выбирать папку. Выберите папку, которую вы создали, и нажмите Select Folder. Можно также установить директорию по умолчанию, в которую сохраняет Pattern Wizard с sfpref функция при помощи 'PatternWizardCustomDir' в качестве первого аргумента. Для получения дополнительной информации смотрите sfpref.

  5. В подсказке назовите свой шаблон UpperTriangleIterator и нажмите Save. Pattern Wizard сохраняет ваш шаблон как файл модели UpperTriangleIterator.slx в пользовательской папке шаблона.

Примечание

Можно использовать Pattern Wizard для повторного использования только блок-схемы. К состояниям повторного использования и субдиаграммам, создайте атомарную субдиаграмму. Для получения дополнительной информации смотрите, Создают Допускающие повторное использование Субкомпоненты при помощи Атомарных Субдиаграмм.

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

Pattern Wizard использует одну, плоскую папку для сохранения и получения шаблонов блок-схемы.

  • Сохраните все блок-схемы в верхнем уровне пользовательской папки шаблона. Не создавайте подпапки.

  • Убедитесь, что все файлы блок-схемы имеют .mdl или .slx расширение.

Измените свою пользовательскую папку шаблона

Pattern Wizard помнит ваш выбор пользовательской папки шаблона для будущих сеансов. Чтобы выбрать другую папку, переименуйте свою существующую пользовательскую папку шаблона и выполните одно из следующих действий:

  • Сохраните новый пользовательский шаблон в Pattern Wizard.

  • Снова используйте существующий пользовательский шаблон от Pattern Wizard.

Pattern Wizard предлагает вам выбирать новую папку.

Повторное использование пользовательские шаблоны блок-схемы

Pattern Wizard хранит ваши блок-схемы как файлы модели в пользовательской папке шаблона. Шаблоны, которые вы сохраняете в этой папке, появляются в выпадающем списке, когда вы выбираете Pattern> Custom. Можно добавить пользовательский шаблон непосредственно в график или в графическую функцию подотмеченную на диаграмме в графике.

Например, чтобы добавить верхний треугольный итератор пользовательский шаблон в графическую функцию:

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

  2. Введите эту функциональную подпись:

    function y = ut_iterator(u, numrow, numcol)
    Функция берет три входных параметров.

    Входной параметрОписание
    u2D матрица
    numrowКоличество строк в матрице
    numcolКоличество столбцов в матрице

  3. Щелкните правой кнопкой в функции и выберите Group & Subchart> Subchart. Функция появляется как непрозрачное поле.

  4. Дважды кликните функцию подотмеченную на диаграмме, чтобы открыть его.

  5. Удалите блок-схему по умолчанию из графической функции.

  6. На вкладке Modeling выберите Pattern> Custom. Диалоговое окно открывается, перечисляя все шаблоны, которые вы имеете сохраненный в вашей пользовательской папке шаблона.

  7. Выберите верхний треугольный шаблон итератора и нажмите OK. Pattern Wizard добавляет ваш пользовательский шаблон в графическую функцию.

  8. В графической функции, вместо action1, замените соответствующими мерами. Это действие повторяется однажды для каждой строки матрицы.

MAB-совместимые шаблоны от Pattern Wizard

Pattern Wizard генерирует блок-схемы, геометрия которых и размещение выполняют инструкции из MathWorks Advisory Board (MAB).

Шаблоны решения

 Если

 If-Else

 Если-Elseif

 Если, elseif, еще

 Если Elseif Elseif Еще

 Вложенный, если

Шаблоны цикла

 Цикл for

 Цикл While

 Цикл с условием продолжения

Переключите шаблоны

 Два случая

 Три случая

 Четыре случая

Похожие темы