主要内容

开始使用快速重启

当你需要模拟模型迭代调整参数,实现所需的响应,或自动化测试,使用快速启动避免再次编译。快速启动允许您执行迭代模拟没有每次都编译或终止仿真模型。一个通用的工作流使用快速启动包括以下步骤。

  1. 打开快速重新启动使用快速启动按钮上的仿真软件金宝app®将来发布或从命令行。

  2. 模拟模型。第一个模型模拟需要编译,初始化并保存ModelOperatingPoint对象。仿真完成后,它并没有终止。相反,再次初始化模型快速重启。

  3. 执行这些操作:

    • 改变可调参数。

    • 解决变步之间切换。

    • 调优根级输入。

    • 基本工作空间,模型修改工作空间变量和数据字典条目引用的可调参数。

    • 改变输入从文件从工作空间块。

    • 改变初始状态下一个仿真的参数。

    • 使用信号生成器块,更改数据,重命名信号和信号组,并添加新组。

    • 改变信号记录覆盖值模型编程方式使用set_param命令和DataLoggingOverride参数。看到从MATLAB覆盖信号日志设置

    一旦初始化模型快速重启,你不能

    • 改变尺寸,类型,或一个信号或变量的复杂性。

    • 更改一个nontunable样本时间等参数。

    • 使结构变化,如增加或删除块或连接。

    这些变化需要你再次编译模型。这样的改变,关闭快速启动,让您的更改,重复这个过程。

  4. 你不需要重新编译模型解决如果你改变。你可以选择适当的解决在运行时无需通过一个昂贵的重新编译过程。

  5. 模拟模型。模型使用所提供的参数和输入新值但不重新编译。

  6. 一旦你取得了理想的反应,关闭快速启动。

    请注意

    • 当你关闭快速启动,仿真软件不存储任何编译信息模型。金宝app时编译模型下模拟模型。

    • 快速启动时不支持金宝app使用当地的解算器引用模型启用的解算器窗格中

准备一个模型使用快速重启

模拟模型快速重启之前,确保模型满足这些需求:

  • 如果你启用了回调模式,确保他们不要试图使结构变化时,模型被重新初始化。例如,面具等回调初始化命令每个仿真开始时被调用。因此,避免使用面具初始化代码,使得该模型结构变化。

  • 必须支持所有块模型金宝appModelOperatingPoint对象。

  • 仿真模式是正常或加速器模式。

请注意

快速重新启动时,你不能编译后,将更改保存到模型。保存更改需要仿真软件丢弃信息编译后的状态。金宝app保存任何更改模型,先关闭快速启动。

启用快速启动

使用这些方法来启用快速启动:

  • 单击快速启动按钮模型编辑器工具金宝app栏上的。

  • 在MATLAB®命令提示符,使用set_param启用快速启动。类型

    set_param(模型、“FastRestart”、“上”)

使用快速启动模拟模型

负荷模型后,打开快速重启,模拟模型。

  1. 通过调用模拟模型sim卡或单击运行按钮在模型编辑器中金宝app将来发布。第一个模拟快速重启需要模型编译和保存ModelOperatingPoint对象。

    仿真完成后,状态栏显示模型编译快速重启。

    在快速启动过程中,模拟状态重新启动,模型编辑器变得冻结金宝app在模型编译和初始化。

    金宝app模型状态栏显示“重新启动”状态消息

  2. 调整可调参数模型中,如获得的价值获得块,或调整根级输入值。您还可以更改基本工作空间变量。你不能调整nontunable参数如样品时间,因为这样做需要模型编译一次。

  3. 模拟模型。这一次,模型没有编译。当你点击按钮或进步,模型更新阻塞,有新的价值观以及引用工金宝app作空间变量。

  4. 当你感到满意的结果,关闭快速启动通过单击快速启动按钮。

  5. 保持您的更改,保存模型。

请注意

在快速启动模型初始化后,模型显示一个警告,如果你试图使模型的结构变化。金宝app这些变化,你必须关闭快速启动。

停止一个模拟

当你点击停止在中间的一个快速启动仿真:

  • 模拟不终止。

  • 模型的初始化状态。

  • 你现在可以改变模型中的可调参数

  • 你可以终止仿真和快速重启通过单击退出快速启动按钮。

退出快速重启

你可以退出快速重启只有当模型处于初始化状态。模拟后,单击快速启动按钮。以编程方式,类型:

set_param(模型、“FastRestart”、“了”)

  • 金宝app仿真软件仿真终止。

  • 金宝app仿真软件丢弃任何编译信息模型。

  • 该模型必须编译下次你再次模拟。

快速启动的方法

调优参数之间的模拟

  • 当一个模型初始化快速重启,除了块值和基本工作空间变量,您可以调整的参数数据导入/导出解算器窗格中(在配置参数对话框模拟选项卡,在准备,点击模型设置)。

  • 某些参数之间可调模拟只有当模型初始化快速重启。它们包括:

    • 初始值参数的集成电路

    • 初始输出参数的合并

    • 数据参数的从工作空间

    • 信号参数和信号组的信号生成器块。

切换之间的动力学模拟

快速重新启动时,您可以切换之间的动力学模拟。只有有效解决,可以列出了解算器列表的配置参数对话框。如果您使用的开关动力学set_param命令之间的模拟和设置为无效解算器,您将看到一个警告和无效的解决者将被忽略。

模型方法和回调快速重启

快速启动时,仿真软件调用模型和块方法和回调函数如下金宝app:

  1. 调用模型InitFcn回调。

  2. 调用模型SetupRuntimeResources方法。

    1. 调用mdlSetupRuntimeResources功能的方法。

  3. 调用模型开始方法。

    1. 调用mdlStart功能的方法。

  4. 调用模型初始化方法。

    1. 调用mdlInitializeConditions功能的方法。

      请注意

      使用ssIsFirstInitCond国旗保护代码,应该只在初始化阶段的模拟,包括第一和随后的初始化快速重启。

  5. 调用模型和块StartFcn回调。

    请注意

    步骤1 - 5适用于所有模拟仿真软件(有或没有快速重启)。金宝app

  6. 第一模拟快速重启,捕捉一个模拟快照。一个模拟快照包含模拟状态(ModelOperatingPoint)和信息记录相关数据和可视化模块。作为快照捕获的一部分,电话ModelOperatingPoint功能的方法。

  7. 这是一个标准的执行阶段的模拟,有或没有快速重启。

    • 调用模型输出

    • 调用模型更新

    • 调用模型衍生品

    • 在一个循环中重复这些步骤,直到停止时间或停止请求。

  8. 调用模型终止方法。

    1. 调用mdlTerminate功能的方法。

  9. 仿真结束后,调用模型和块StopFcn回调。这是一个标准的任何模拟阶段,有或没有快速重启。

  10. 恢复模拟快照快速重启。作为恢复的一部分,电话功能的方法。

  11. 在初始化状态等到这些行动之一:

    • 运行另一个仿真(以编程方式或使用仿真软件编辑器)在快速启动,返回步骤3。金宝app

    • 结束快速启动模式和uncompile模型:

      1. 调用模型方法CleanupRuntimeResourcesmdlCleanupRuntimeResources功能的方法。

      2. 不叫StopFcn再次回调。

在某些情况下。的开始终止方法只调用一次,而不是为每个连续快速启动仿真。在这些情况下,结合调用这些方法调用SetupRuntimeResourcesCleanupRuntimeResources,分别。这些情况如下:

  • 当一个函数包含自定义ModelOperatingPoint保存和恢复方法。

  • 当一个功能设置标志SS_OPTION_CALL_TERMINATE_ON_EXIT

  • 当一个函数被放置在加速模式的参考模型。

在回调函数模型的更多信息,见回调函数自定义模型的行为

操作点和初始状态值

你可以改变初始状态值,包括ModelOperatingPoint,在快速启动模拟。

当一个ModelOperatingPoint对象用于快速启动的初始状态是,每一个新的模拟重置模型的开始时间,而不是每个快照时间ModelOperatingPoint对象。此后,在前进的第一步,模型检查金宝appModelOperatingPoint已经指定。如果是,仿真软件金宝app计算下一步之前恢复它。因此,有效地模拟的第一步快速转发到指定的快照时间ModelOperatingPoint对象。

分析数据使用模拟数据检查员

快速启动支持数据日志使用模金宝app拟数据检查员。每一个模拟快速重启将创建一个SDI对象的名称< modelname >快速重启运行<数字>。的价值数量为每个模拟增量。

自定义代码初始化函数

当你自定义代码的地方配置参数>模拟目标>自定义代码>初始化函数窗格中模型配置参数对话框中,这被称为只在第一次模拟快速重启。

相关的话题