Matlab/Simulink批量运行仿真、参数寻优

适用场景

参数寻优、PI调参等。用Matlab脚本代替人工操作。

前提条件

1. 需要改变的参数用变量名代替,比如K。这样便于在脚本中修改变量值。

2. 主界面要有outport(输出端口,椭圆形的),这个作为评价指标。注意是最外层的系统,Subsystem貌似不行。

3. 模型设置里勾选Single simulation output。

脚本代码

%% 批量运行仿真
clear;
modelname=bdroot;   %获取当前激活模型名
n=0;
for K=0:0.01:0.2	%需要改变的参数
    n=n+1;
    simOut(n)=sim(modelname);   %这句是关键
    result(n,1)=K;  %第一列记录参数值
    result(n,2)=simOut(n).yout{1}.Values.data(end); %第二列记录模型输出值(终值)
end
plot(result(:,1),result(:,2));

然后就可以愉快地挂机摸鱼,喝茶睡觉玩手机啦~

关于sim()函数的更多用法可参考Matlab官网说明:https://ww2.mathworks.cn/help/simulink/slref/sim.html?requestedDomain=cn

小提示:您还可以点击下方 [ 标签 ] 阅读相关文章。您可以通过 RSS 订阅本站文章更新,订阅地址:https://crowya.com/feed
暂无评论

发送评论 编辑评论

|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇