matlab + 金宝appsimulinkででのを一気!!!
皆さんこんはトレーニングエンジニアの远藤。。
simulink 金宝appsimulinkとmatlabををををとして,,に技术技术的な内容について书い书いててて
r2022aが,,がリリースれたね!新机能新机能がが盛り盛り盛り沢山沢山でもも楽しくリリーススノートノートを読んでででいいます。。のの记事でででででででででで早速早速例の直后いうこともあっでもと机能机能を调查调查中中ののためため新机能新机能绍介绍介绍介はははまたまたまた
simulink si金宝appmulinkとmatlabををを系ぐ大きな理由一つ「「「复数シミュレーションの実行」解说书いていこうか思い思い。いろんなパラメータをせせててシミュレーションシミュレーションをを行いをを比较ししたいたい异なる异なる入力データでで行い行い行い検证検证検证検证検证検证検证をををはあり。もちろん手动でモデル编集し逐次に実行するすることこともももできできますががプログラムで自动自动化化するするとと非常
,复数用关数は少々使い方に癖がありありありありありににに惯れ惯れてていい人にとっては少し少し手手ををづらいづらいももあり。そこそこ,,,,,,,のつにをて,シミュレーション実行方法についてしていきたいととます。。。
こんな方に!
- 最适なの调查の,,パラメータをしながらを実行したい
- 色々なデータ使ってを実行したい
- 复数コアをてシミュレーションを并列したい
平行计算工具箱ががする実行をててを并列実行するする场合场合场合场合场合がががががが。。。このこのこのこのこの记事记事记事でで绍介绍介しししははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははははは
1. Parsim关数をたシミュレーションシミュレーションシミュレーション
プログラムループシミュレーションとととループSIMMatlab R2017Aから复数复数シミュレーションシミュレーションシミュレーション実行実行用用用关数关数关数关数关数であるParsimが导入います。关数使用するとより效率的的に复数复数シミュレーションをを実行。
parsim关数关数方を确认するする,1回回ををを行っ行ってててみみうううううましょましょましょ关数关数关数关数关数关数关数ははは关数关数关数关数は违い违い,,単纯単纯モデルモデルモデルモデル名名名をををををを指定しオブジェクトをてあげるがが。。。。。。。オブジェクトオブジェクトオブジェクトオブジェクトオブジェクト,,金宝appSimulink.SimulationInput关数に名指定するで作ることができます。
>> in = 金宝appsimulink.simulationInput(“ VDP”);
simulationInputオブジェクトparsim关数关数にばを実行することができ。。。
>> out = parsim(in)
ut =
金宝appsimulink.simulationOutput:
仿真metadata:[1×1 simulink.金宝appsimulationmetadata]
错误:[0x0 char]
parsim parsim关数关数关数关数关数关数关数关数关数关数关数の特徴はははは,,,,,,,,,金宝app,,,,,,,,,,,オブジェクトオブジェクトオブジェクト
为了i = 10:-1:1 in(i)= s金宝appimulink.simulationInput(“ vdp”);结尾
for simulationInput配列配列作成しまし10から11にににににににに方向方向方向しててているのはは最初最初最初最初ににににに个分个分个分个分个分のメモリを确保确保确保するするする。。。特に特に特にメモリ((((())
>> out = parsim(in)
ut =
1×10 金宝appsimulink.simulationOutput配列
10回シミュレーションました。ただ,何も设定ないのでのでのでのでのでのでので回と回と回と回と回とも同じシミュレーションがが行われれててていいますます。。このこの配列配列配列配列の要素设定设定たシミュレーションにことができますので早速やりをしていきいきう。
2.パラメータのスイープ
仿真inputsetVaria关数をこと,シミュレーションに使用パラメータを変更することができ。
>> in = in.setVariable(“ K”,10);
内でれているパラメータ名と値セットセットでで指定します。。。注意注意点点としとしとしててててててて,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,入れ直すがあります。
simulationInputオブジェクトてししオブジェクトののし,にそれぞれそれぞれ异なる异なるパラメータパラメータをを指定してあげることで,,ななパラメータををを
例としてのよう超简単なでを确认してみます。
シミュレーション结果しやすいに,データエクスポートも変更しておきます。
こののの1から10までまでててて关数关数关数実行しみみうう。まずはスイープささせるせる値値をksweep = 1:10;
simulationInputオブジェクトオブジェクト配列を作成しながら各要素にににににににののの対応値値値値ををををををををを
为了i = 10:-1:1 in(i)= s金宝appimulink.simulationInput(“ mymodel”);在(i)= in(i).setVariable(“ K”,ksweep(i));结尾out = parsim(in)
对于10から11に1,10にて先先先10个分个分个分个分メモリーを确保するためです。。シミュレーションシミュレーション结果结果结果をを确认
>> out(1).yout(1)
ans =
1
>> out(2).yout(2)
ans =
2
For parsim parsim关数关数关数关数,,ててててて关数关数关数关数关数关数关数关数关数关数关数关数关数关数关数をを入れ入れてしまわないように気気気をつけ10 x 10 = 100回回てしまうことになり。。
これでスイープて复数シミュレーションをになりました。次はは入力データをを复数使用するする方法方法方法を
3.外部入力の変更
仿真inputsetExternalInput关数をこと,シミュレーション外部外部シミュレーションに変更変更することももできます。また超超简単简単なななモデル
まずはシミュレーション入力データ用意します。
t =(0:0.1:10)';u1 = t;u2 = sin(t);u3 = -cos(t);u = {u1,u2,u3};
入力データベクトルなることが多い,,セル配列や行列てとループ使い使いますあとはパラメータととととと同様にににににに
为了i = 10:-1:1 in(i)= s金宝appimulink.simulationInput(“ mymodel2”);in(i)= in(i).setExternalInput([t,u {i}]);结尾out = parsim(in)
シミュレーション结果确认してとと……
しっかり别のデータ使用されいますね!
4.复数の状况・を可视化する
の大を実行している场合,各シミュレーション状况状况ををリアルリアルタイムタイムタイムにに确认とと便利便利ですですよよね。。シミュレーションマネージャーマネージャーををををと,,,,シミュレーションシミュレーションシミュレーションのののののことができます。
parsim关数は超简単关数关数シミュレーションを実行际际ににににににににににににに
out = parsim(在“显示模仿者”,,,,“上”)
これで时シミュレーションマネージャーが起动,シミュレーション状况ををできますます
scattersctactやsprofをを使え特定のと结果の可视可视化化することことも可能です。他他にもな机能机能がが用意用意さシミュレーションマネージャーのドキュメントをご确认。
5.终わりに
parsim关数关数用い复数シミュレーション解说しました以前のの金宝appSimulink APIの记事simulink simul金宝appink用用用关数ことでで化できるできるタスクタスクはははたくさん普段普段普段普段普段普段普段普段普段普段ますますますだけだけだけだけだけ使ってて业务业务をををいるいる方方,,,,,,,,,,!
- カテゴリ:
- 金宝appSimulink将军,
- 机能と使い方
コメント
コメントを残すは,ここMATHWORKSアカウントアカウントアカウントアカウントサインインするするか新しい新しい新しい新しいアカウントアカウントアカウントアカウント作成作成。。。