Matlab Simulink保存最终状态导致编译错误

Matlab Simulink保存最终状态导致编译错误,matlab,simulink,Matlab,Simulink,我有一个simpe simulink模型 除非我尝试保存输出状态,否则它可以正常编译: 当我试图编译它时,我会遇到这个错误: 仅在正常模式或加速器模式下运行的模型以及在正常模式下运行的模型块支持保存完整的SimState集 为什么会发生这种情况,如何避免 更新: 我的模型设置为固定步长,并设置为正常模式: 如评论中所述,“构建”模型仅用于生成代码/可执行文件,不支持保存最终状态以生成代码。如果您只想运行模型,只需按“运行”按钮,而不是“构建”按钮,它就会工作。有关如何运行模型的详细信息,请

我有一个simpe simulink模型

除非我尝试保存输出状态,否则它可以正常编译:

当我试图编译它时,我会遇到这个错误:

仅在正常模式或加速器模式下运行的模型以及在正常模式下运行的模型块支持保存完整的SimState集

为什么会发生这种情况,如何避免

更新:

我的模型设置为固定步长,并设置为正常模式:

如评论中所述,“构建”模型仅用于生成代码/可执行文件,不支持保存最终状态以生成代码。如果您只想运行模型,只需按“运行”按钮,而不是“构建”按钮,它就会工作。有关如何运行模型的详细信息,请参阅。

如何运行模型?它是否位于另一个模型内的模型块中?您确定模型中没有任何其他块吗?您是否从模型生成代码?@am304,这是一个非常简单的模型。它不是嵌套的。它运行良好。但它并没有建立。我通过按下我上传的最后一张照片上最右边的按钮来构建代码。为什么要构建模型?这有什么作用?记录最终状态不适用于建筑。只需按play运行模型。我需要在一个循环中运行simulink,并在每个循环开始时调整模型。因此,我需要在下一个循环中恢复simulink的状态。问题是simulink通常非常慢。因此,我需要编译它以使其更快。正如我所说的那样,这是行不通的。Simulink并不慢。你的模型可能慢,但那是另一回事。我会尝试解决你的模型运行缓慢的原因,并提高速度。在这种情况下,你不能帮助我,因为模型运行时间为5到10秒,这是合理的。我已经尽了最大努力使它尽可能快。问题是它必须在一个循环中运行数千次,这使得它非常慢。好吧,不看模型,就不可能说5/10秒是否合理。这可能是正常的,也可能是模型可以运行得更快。例如,我注意到在您的“玩具模型”示例中,您使用的是固定步长解算器。如果在“真实”模型中也这样做,则可变步长解算器可能会快得多。另请参阅Simulink文档中有关使用
SimState
的限制。您应该能够在Accelerator中运行您的模型,但无论您以何种方式运行您的模型,我确信您不需要按下“Build”按钮,这是完全不必要的。