是否存在sim()命令的替代函数或直接从Matlab执行Simulink模型/编译版本而不设置coder.extrinsic?
我想在迭代Matlab函数中执行simulink模型。 (因此,速度非常重要)。使用过的Simulink模型包含一个Dymola接口,因此我无法在Matlab中直接对其进行建模。另一个主要的Simulink模型启动并迭代Matlab函数,因此,模拟它会导致编码器尝试有效地编译它。通过设置coder.extrinsic,当然我可以使用sim命令,但它的目的太慢了。我考虑过编译Simulink模型作为替代方案,但不知道这是否是一个好方法
结构如下:
Simulink主模型 - > matlab函数 - > simulink模型
答案 0 :(得分:1)
sim命令需要MATLAB。所以你需要编码器。外在的。没有coder.extrinsic来模拟模型没有直接的替代方式。您可以从模型生成代码并使用coder.ceval函数调用生成代码。但是,如果你的目标只是为了获得更快的速度而不是获得独立的代码,你可以将模型设置为以加速模式运行,看看是否能提高速度。