Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

管理模型的配置集

模型配置集是模型参数值的指定集合。

您可以将多组参数值与您的模型相关联。与模型相关联的配置集可以为任一或所有配置参数指定不同值。该模型使用活动配置的参数值。您可以将活动配置快速更改为关联到模型的任何配置集。

在有以下需要时,可以在一个模型中使用多个配置集:

  • 在更改几个参数值后比较模型执行的差异。

  • 在不同上下文中使用模型时对模型使用不同配置。

对于此示例,您将模型 sldemo_fuelsys_dd 设置为具有两个指定不同求解器的配置集。然后将其中一项配置复制到模型 vdp 中,并将其与 vdp 的默认配置集进行比较。

在模型中创建配置集

模型 sldemo_fuelsys_dd 包含一个配置集,该配置集使用可变步长求解器。添加另一项配置以使用固定步长求解器。

  1. 打开模型。在命令行中,键入 sldemo_fuelsys_dd

  2. 打开模型资源管理器。在 Modeling 选项卡上,点击 Design > Model Explorer

  3. Model Hierarchy 窗格中,展开模型节点并选择模型名称 sldemo_fuelsys_dd

  4. 可以通过以下方式之一创建新的配置集:

    • Add 菜单中,选择 Configuration

    • 在工具栏上,点击 Add Configuration 按钮

    • 选择模型节点下的 Configurations 节点。在 Contents 窗格中,右键点击现有配置集,然后复制并粘贴该配置集。

  5. 选择模型节点下的 Configurations 节点。新配置集 Configuration1 出现在 Contents 窗格中。默认配置 Configuration 仍是该模型的活动配置。

  6. Contents 窗格中,双击名称 Configuration1,并将配置重命名为 FixedStepConfig。您将在下一节中指定固定步长求解器。

  7. 将配置 Configuration 重命名为 VariableStepConfig

更改配置集中的配置参数值

要更改配置集的参数值,请打开该配置的 Configuration Parameters 对话框。您可以打开和更改任何配置集,无论它是否处于活动状态。

对于此示例,请更改配置 FixedStepConfig 以指定固定步长求解器,而不是默认的可变步长求解器。

  1. 打开模型资源管理器。

  2. 展开模型节点,并选择其下的 Configurations 节点。

  3. Contents 窗格中,右键点击配置集 FixedStepConfig,然后点击 Open

    配置集将在 Configuration Parameters 对话框中打开。

    注意

    每个配置集都有自己的 Configuration Parameters 对话框。当您更改配置集的状态后,对话框标题栏将改变以反映配置集的状态。

  4. Solver 窗格中,将 Type 参数设置为 Fixed-step。点击 OK

该模型现在包含两种配置,VariableStepConfigFixedStepConfig,它们使用不同求解器类型。通过更改活动配置和仿真模型,可以比较求解器设置如何影响仿真。

激活配置集

在任何给定的时间,一个模型只能有一个关联的配置集处于活动状态。处于活动状态的配置集决定模型参数的当前值。您可以随时(执行模型时除外)更改活动或非活动的配置集中的参数值。这样,您可以针对不同目的(例如测试和生产)快速重新配置模型。

要激活您在上一节中创建的固定步长配置,请执行下列步骤:

  1. 打开模型资源管理器。

  2. 展开模型节点,并选择其下的 Configurations 节点。

  3. Contents 窗格中,右键点击配置集 FixedStepConfig,然后点击 Activate

    活动配置会在配置名称右侧显示 (Active)。

复制、删除和移动配置集

您可以使用模型资源管理器的 Edit 或上下文菜单来删除、复制以及在不同的模型之间移动 Model Hierarchy 窗格中显示的配置集。

对于此示例,请将您的配置 FixedStepConfig 复制到模型 vdp

  1. 打开模型 vdp 并打开模型资源管理器。

  2. Model Hierarchy 窗格中,展开模型 sldemo_fuelsys_dd 的节点,并选择其下方的 Configurations 节点。

  3. Contents 窗格中,右键点击 FixedStepConfig,然后在上下文菜单中点击 Copy

  4. Model Hierarchy 窗格中,右键点击模型节点 vdp,然后点击 Paste

  5. 为模型 vdp 激活配置 FixedStepConfig

要使用拖放操作复制配置集,请按住鼠标右键,并将配置集拖到要在其中创建副本的模型的 Configurations 节点上。

要使用拖放操作将配置集从一个模型移动到另一个模型中,请按住鼠标左键,并将配置集拖到目标模型的 Configurations 节点上。

注意

不能移动或删除模型中的活动配置集。

保存配置集

当您在模型中存储配置集时,该配置集会在您保存模型时保存。您也可以将模型外部的配置集存储为独立配置集,以便与其他模型共享该配置。您可以将配置集保存在 Simulink® 数据字典中,或将配置集导出到 MAT 文件或脚本中。如果在基础工作区中存储独立配置集,要保存它,必须将其导出到 MAT 文件或脚本中。

Simulink 数据字典

要将配置集保存在模型之外的位置,请将配置存储在 Simulink 数据字典中。您可以使用数据字典来共享和存档配置。要在模型中使用配置,请使用配置引用。有关详细信息,请参阅在多个模型之间共享配置

导出的文件

您还可以将配置集的设置保存为 MAT 文件中的 Simulink.ConfigSet 对象,或保存为 MATLAB® 函数或脚本。当您要比较不同配置集中的设置时,请将配置集导出到 MATLAB 函数或脚本中。但如果您要保留独立配置集,则不建议将配置导出到文件,因为如果这样做,您必须手动加载配置集才能使用它。请改为将配置集保存在 Simulink 数据字典中。

对于此示例,请使用模型资源管理器来保存您复制到模型 vdp 的配置集 FixedStepConfig

  1. 打开模型资源管理器。

  2. Model Hierarchy 窗格中,展开模型节点 vdp,并选择其下方的 Configurations 节点。

  3. Contents 窗格中,右键点击配置 FixedStepConfig,然后选择 Export

  4. 在 Export Configuration to File 对话框中,指定文件的名称和文件类型。对于此示例,将配置保存为 FixedStepConfig.m

    如果指定 .m 扩展名,文件将包含一个创建配置集对象的 MATLAB 函数。如果指定 .mat 扩展名,文件将包含一个配置集对象。

    注意

    • 不要为文件指定与模型名称相同的名称。如果文件与模型同名,软件在加载文件时将无法确定哪个文件包含配置集对象。

    • 要在以后的版本中使用该配置集,请指定 .mat 扩展名。如果您指定 .m 扩展名,在极少数情况下,参数值可能会因依存关系的变化而更改。

  5. 点击 Save。Simulink 软件将保存配置集。

加载保存的配置集

要加载您从模型 vdp 中保存的配置集,请执行下列步骤:

  1. 打开模型 vdp

  2. 打开模型资源管理器。

  3. Model Hierarchy 窗格中,右键点击模型,然后选择 Configuration > Import

  4. 在 Import Configuration From File 对话框中,选择包含可创建配置集对象的函数的 M 文件,或选择包含配置集对象的 MAT 文件。在此示例中,请选择 FixedStepConfig.m

  5. 点击 Open。Simulink 软件将加载该配置集。

    注意

    • 如果您加载的是包含无效的自定义目标的配置集对象,软件会将 系统目标文件 (Simulink Coder) 参数设置为 “ert.tlc”。

    • 如果您加载的配置集包含系统上不可用的组件,则缺失组件中的参数将重置为默认值。

比较配置集

当您将两个配置集保存为 M 文件或 MAT 文件时,您可以使用 visdiff 函数对它们进行直观的比较。此函数将打开 Comparison Tool,并显示两个文件之间的不同之处。有关比较工具的详细信息,请参阅比较 Simulink 模型

对于此示例,请将默认配置 Configuration 与您复制到模型 vdp 中的配置 FixedStepConfig 进行比较。

  1. 将配置 FixedStepConfig 保存到文件 FixedStepConfig.m,如保存配置集中所示。

  2. 按照相同的过程将第二个配置 Configuration 保存到文件 DefaultConfig.m 中。

  3. 比较两个文件。

    visdiff('FixedStepConfig.m','DefaultConfig.m');

相关主题