主要内容

使用模式向导创建流程图

“模式向导”是一个实用工具,用于生成图形函数和图表中使用的常见流程图模式。与手动创建流程图相比,模式向导提供了几个优点。模式向导:

  • 生成公共逻辑和迭代循环模式。

  • 促进跨模式的几何和布局的一致性。

  • 便于从中心位置存储和重用模式。

  • 允许在现有流程图中插入模式。

模式向导生成的流程图,其几何形状和布局符合MathWorks顾问委员会(MAB)的指导方针。您可以通过修改条件和操作或插入额外的逻辑模式来定制流程图。您还可以在“模式向导”中将流程图保存为自定义模式,以便以后重用。

例如,假设您希望使用Pattern Wizard创建一个图形函数,用于在二维矩阵的上三角形上迭代。函数由两个嵌套组成行索引所在的循环总是小于或等于列下标j.通过使用模式向导,您可以:

  1. 为遍历行索引的外部循环创建流程图.看到创建可重复使用的流程图

  2. 通过插入一个遍历列索引的内循环来扩展流程图j.看到在现有流程图中插入逻辑模式

  3. 在“模式向导”中将流程图保存为自定义模式。看到保存自定义流程图模式

  4. 在图形化函数中重用自定义模式。看到重用自定义流程图模式

创建可重复使用的流程图

要创建流程图,请在建模选项卡,从模式画廊。图案选择包括:

  • 如果if - elseIf-Elseif,以及其他嵌套的决策模式。

  • ,DoWhile循环模式。

  • 最多可切换四种情况。

  • 为以后重用而保存的自定义模式。

  • 你在MATLAB中定义的模式®.m文件。

“模式”对话框提示您输入特定于所选模式的条件和操作。有关流程图模式的详细信息,请参见模式向导中的符合mab的模式

例如,创建外层上三角形迭代器模式中的循环:

  1. 建模选项卡上,选择模式>For循环

  2. 在Pattern对话框中,指定初始化式、循环测试和计数表达式,用于遍历矩阵的第一个维度:

    模式对话框。

  3. 点击好吧.模式向导生成此流程图。

    为for循环建模的流程图。

为了完成上三角形迭代器模式,插入第二个在此流程图中沿垂直过渡的循环。

在现有流程图中插入逻辑模式

使用模式向导向现有流程图添加循环或决策逻辑扩展。选择符合条件的垂直过渡,并从模式画廊。选项包括决策、循环和切换模式。“模式”对话框提示您输入特定于所选模式的条件和操作。

例如,在上三角形迭代器模式中添加第二个循环:

  1. 在状态流中®编辑,来自外部循环图案,选择有标记的垂直过渡{action1}

  2. 建模选项卡上,选择模式>For循环

  3. 在Pattern对话框中,指定初始化式、循环测试和计数表达式,用于遍历矩阵的第二个维度。初始化表达式确保了这一点从来没有超过j.还要输入检索矩阵上三角形中的每个元素的操作。

    模式对话框。

  4. 点击好吧.模式向导将第二个循环添加到流程图中。

    为两个嵌套for循环建模的流程图。

  5. 保存包含模式的模型。

插入逻辑模式的指南

当你创建逻辑扩展时:

  • 一次只能选择一个要扩展的转换。所选的过渡必须完全垂直,并具有目标连接。

  • 只能扩展“模式向导”创建的流程图。

  • 包含流程图的状态流程图只能包含连接和转换。图表不能包含其他对象,例如状态、函数或真值表。

  • 不能扩展自定义创建或修改的模式。

  • 不能选择自定义模式作为扩展。

如果您的选择不符合插入条件,当您从模式Gallery中,您将看到一条消息而不是模式选项。

消息 问题
选择垂直过渡 您没有选择垂直过渡。
所选的过渡必须完全垂直 您选择了一个过渡,但它不是垂直的。
只选择一个垂直过渡 您已经选择了多个转换。
编辑器必须只包含过渡和连接 图中还有其他对象,如状态、函数或真值表。

保存自定义流程图模式

使用模式向导将流程图模式保存在中心位置,然后轻松检索它们,以便在图形函数和图表中重用。选择具有要保存的模式的流程图并进行选择模式>另存为模式

例如,假设你想保存上三角形迭代器模式以供以后重用:

  1. 创建一个用于存储自定义模式的文件夹。看到创建自定义模式文件夹的指南

  2. 在“状态流编辑器”中,选择上三角形迭代器流程图。

  3. 建模选项卡上,选择模式>另存为模式

  4. 如果尚未指定自定义模式文件夹,“模式向导”将提示您选择文件夹。选择您创建的文件夹并单击选择文件夹

  5. 在提示符下,命名你的图案UpperTriangleIterator并点击保存.模式向导将模式保存为模型文件UpperTriangleIterator.slx在自定义模式文件夹中。

请注意

您可以使用模式向导仅重用流程图。要重用状态和子图,请创建原子子图。有关更多信息,请参见使用原子子图创建可重用的子组件

创建自定义模式文件夹的指南

“模式向导”使用单个平面文件夹保存和检索流程图模式。

  • 将所有流程图存储在自定义模式文件夹的顶层。禁止创建子文件夹。

  • 确保所有流程图文件都有. mdl.slx扩展。

更改自定义模式文件夹

模式向导会记住您为将来会话选择的自定义模式文件夹。若要选择不同的文件夹,请使用sfpref函数。例如,将自定义模式文件夹设置为C: \模式,输入:

sfpref (PatternWizardCustomDir = fullfile (“C:““模式”));

或者,重命名现有的自定义模式文件夹,并执行以下操作之一:

  • 将新的自定义模式保存到模式向导中。

  • 从模式向导中重用现有的自定义模式。

模式向导提示您选择一个新文件夹。

重用自定义流程图模式

模式向导将流程图作为模型文件存储在自定义模式文件夹中。选择时,保存在此文件夹中的模式将出现在下拉列表中模式>自定义.您可以将自定义模式直接添加到图表或图表中的子图表图形函数中。

例如,将上三角形迭代器自定义模式添加到图形函数中:

  1. 中所述的从对象调色板中向图表添加图形函数定义一个图形函数

  2. 输入这个函数签名:

    函数y = ut_iterator(u, numrow, numcol)
    这个函数有三个输入。

    输入 描述
    u 二维矩阵
    numrow 矩阵中的行数
    numcol 矩阵中的列数

  3. 在函数内右键单击并选择组子图>子图表.函数显示为一个不透明的方框。

    子图表图形函数。

  4. 双击子图函数打开它。

  5. 从图形化函数中删除默认流程图。

  6. 建模选项卡上,选择模式>自定义.将打开一个对话框,列出已保存在自定义模式文件夹中的所有模式。

    对话框,列出已保存的自定义模式。

  7. 选择上三角形迭代器模式并单击好吧.“模式向导”将自定义模式添加到图形化函数。

  8. 在图形函数中,代替action1,用适当的行动代替。这个操作对矩阵的每一行重复一次。

模式向导中的符合mab的模式

模式向导生成的流程图,其几何形状和布局符合MathWorks顾问委员会(MAB)的指导方针。

决策模式

如果

if - else

If-Elseif

If-Elseif-Else

If-Elseif-Elseif-Else

如果嵌套

循环模式

For循环

While循环

DoWhile循环

开关模式

两种情况

三个案例

4例

另请参阅

相关的话题