声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1944|回复: 1

[求助]仿真算法的选择

[复制链接]
发表于 2006-10-16 15:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
Solver options有定步长和变步长两种算法,仿真时,该选择哪种方法才是正确的。
我的模型是根据微分方程组建立的。
回复
分享到:

使用道具 举报

发表于 2006-10-21 10:14 | 显示全部楼层
在其他论坛看到的,具体那里忘记了,贴出来希望对你有帮助

1、所谓仿真就是真实情况的模拟,实际如何就选择哪种方式了。
比如采样系统当然用定步长比较合理,但实际上对于simulink来讲,定步长或者变步长的真实意义在于数值算法递推迭代的计算步长。
若选择越小的定步长运算,计算结果肯定是越准确的,但迭代次数多了,计算时间就长了。
变步长是simulink根据仿真的具体情况自动调整仿真步长,以求在保证足够精度的前提下尽量减小计算时间,比如当前曲线比较平稳仿真步长就可以大一点;反之,如果曲线波动比较厉害,就要用小步长进行仿真才能保证计算精度。

2、首先变步长任一采样时刻应能在定步长的采样时刻中找到,或者说变步长的采样时刻应是定步长采样时刻的子集
例如:变步长的采样时刻为
[1 3 5 6 9]
那定步长的采样时刻可以是
[1 2 3 4 5 6 7 8 9]

在环境下通过编写M语言脚本文件进行仿真肯定可以实现,但如果想在simulink中实在恐怕要编写S函数了。我所知道的是,多采样仿真可以在simulink中直接实现,但要求两个子系统都得是定长仿真,一快一慢。

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-12-28 03:20 , Processed in 0.096101 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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