找回密码
 注册
关于网站域名变更的通知
查看: 850|回复: 1
打印 上一主题 下一主题

怎么样才能加速 Simulink 模型仿真速度?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-11-8 11:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
有没有了解的?3 ?. C7 ?9 U% W! ]

1 L: c0 U. W6 ~$ N& ]

该用户从未签到

2#
发表于 2019-11-8 18:21 | 只看该作者
下面几种可能性有可能导致仿真运行缓慢:
) L4 a+ o. C8 K9 B4 B/ s. ]% p: c4 v1 r$ p* o6 J4 s1 t/ H+ B: k
    模型中有使用 MATLAB Function 模块。此时,每个步长在计算时都要调用 MATLAB 去解释执行。这大大降低了仿真速度,解决方法是尽可能改用 Fcn 模块。) p2 g+ f' n0 P
    模型中有以 MATLAB 文件编写的 S 函数。解决方法是将 MATLAB 文件编译为 MEX 文件。此外,如果可能,尽量使用 Simulink 内置的模块代替 S 函数。
9 [8 J$ m8 C8 `    过小的步长或采样时间。在仿真过程中,保持小步长对捕获重要事件非常重要,但同时,步长过小会产生不必要的输出点,并减慢仿真速度。
1 a3 F# a3 Q' L6 F5 }    maximum step size设置太小。请尝试将该属性设置为auto。- w4 k: `8 ^* x
    您可能对精度要求过高。默认的relative tolerance是 0.1%,能满足一般需求。8 ]! Q1 @6 ^! ~: C0 {: e
    时间跨度(总仿真时间)可能太长。建议缩短。/ k+ [+ y+ q3 A% D" G
    模型中有使用 Memory 模块。该模块会导致变量阶解算器在每个时间步长计算时,被重置回一阶。2 Y2 q+ a4 b& n$ W  f6 C
    模型中有使用 Extras 库,例如图形、自动调整、频谱分析。
+ U: u8 H' I+ a/ s    模型中有使用 scope 模块,尽管其影响很可能非常小。4 U" U0 \0 d9 j# i. ?
    代数环,请参考之前发布的更为详细的说明。& H1 T! w; z. W2 L6 Y9 K9 g/ a$ R. e
    请不要将白噪声模块接到积分器。对于连续系统,请使用带限制白噪声块。5 |' T5 T4 j2 C: h6 b
    模型的刚度很大,但您使用的是非刚性解算器。请尝试使用ode15s。" k* c8 \% q: D, u0 E
    过零检测(zero crossing),可能导致模型在某些仿真时刻“卡住”。您可以禁用该检测。更为具体的说明,请在帮助文档中搜索zero crossing。3 r6 @  h" n: O) |9 Y9 ?
    在 model configuration 中勾选 inline parameters,此时可以将所有参数内置,从而提高速度。# f9 {' r3 P( Z6 N
    使用Simulink自带的加速功能。参考:http://www.mathworks.cn/help/sim ... s-acceleration.html
$ Q" T% s- A. A7 Z* Q  x/ r* L# s    如果模型非常复杂(涉及大量模型引用和子系统),并且涉及大量数据记录,则仿真速度也会受到影响。
$ e5 }  C) d3 G5 l% R% Q; m
% K8 t$ b+ A8 f6 f/ v: V' m$ z9 N! u
此外,仿真速度还受系统,包括处理器、RAM等影响。如果您在仿真期间打开了任何图形示波器或其他可视输出模块,这将降低性能。仿真速度与 CPU 速度成正比。如果在仿真期间存储的变量过大,则影响仿真速度。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 23:36 , Processed in 0.156250 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表