提高仿真速度

您所在的位置:网站首页 matlab运行速度太慢为什么 提高仿真速度

提高仿真速度

2024-06-17 19:32| 来源: 网络整理| 查看: 265

该模型包括 Interpreted MATLAB Function 模块。当模型中包含 Interpreted MATLAB Function 模块时,每个时间步都会调用 MATLAB® 执行引擎,从而导致仿真速度大大降低。尽可能使用 Math Function 模块。

模型中包含 MATLAB 文件 S-Function。MATLAB 文件 S-Function 也会在每个时间步调用 MATLAB 执行引擎。请考虑将 S-Function 转换为子系统或 C-MEX 文件 S-Function。

模型中包含 Memory 模块。使用 Memory 模块会导致变阶求解器(ode15s 和 ode113)在每个时间步都重置回 1 阶。

最大步长太小。如果您更改了最大步长,请尝试使用默认值 (auto) 再次运行仿真。

准确性要求太高。默认的相对容差(0.1% 精度)通常就已足够。对于状态会变为零的模型,如果绝对容差参数太小,仿真可能会围绕接近零的状态值执行太多步。请参阅Maximum order中有关此错误的讨论。

时间太长。缩短时间间隔。

您的模型表示刚性的系统,但您使用的是非刚性求解器。尝试使用 ode15s。有关详细信息,请参阅刚性系统。

您的模型使用的采样时间不是互为倍数。混合不是互为倍数的采样时间会导致求解器采用足够小的步长,以确保计算所有采样时间的采样时间命中点。

模型包含代数环。代数环的解在每个时间步迭代计算。因此,它们大大降低了性能。有关详细信息,请参阅代数环概念。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3