在Matlab

时间:2015-12-21 14:17:46

标签: matlab simulink dymola

是否存在sim()命令的替代函数或直接从Matlab执行Simulink模型/编译版本而不设置coder.extrinsic?

我想在迭代Matlab函数中执行simulink模型。 (因此,速度非常重要)。使用过的Simulink模型包含一个Dymola接口,因此我无法在Matlab中直接对其进行建模。另一个主要的Simulink模型启动并迭代Matlab函数,因此,模拟它会导致编码器尝试有效地编译它。通过设置coder.extrinsic,当然我可以使用sim命令,但它的目的太慢了。我考虑过编译Simulink模型作为替代方案,但不知道这是否是一个好方法

结构如下:

Simulink主模型 - > matlab函数 - > simulink模型

1 个答案:

答案 0 :(得分:1)

sim命令需要MATLAB。所以你需要编码器。外在的。没有coder.extrinsic来模拟模型没有直接的替代方式。您可以从模型生成代码并使用coder.ceval函数调用生成代码。但是,如果你的目标只是为了获得更快的速度而不是获得独立的代码,你可以将模型设置为以加速模式运行,看看是否能提高速度。