comment皆さんこんにちは。トレーニングエンジニアの遠藤です。つなぐ」をコンセプトとして、主に技術的な内容について書いております。リリースされましたね!注目の新機能が盛り沢山で私も楽しくリリースノートを読んでいます。今回の記事で早速それらの機能の紹介!......と行きたいところなのですが、例のごとくリリース直後ということもあって自分でも色々と機能を調査中のため、新機能の紹介はまた別の機会にできればと思います。繋ぐ大きな理由の一つである「複数シミュレーションの実行」について解説記事を書いていこうかと思います。いろんなパラメータをスイープさせてシミュレーションを行い結果を比較したい、異なる入力データでシミュレーションを行いモデルの検証をしたいなどなど、複数のシミュレーションを一度に実行したい場面は少なくありません。手動でモデルを編集して逐次的に実行することもできますが、プログラムで自動化すると非常に効率的にシミュレーションを実行できます。慣れていない人にとっては少し手を出しづらい部分もあります。そこで、この記事では「パラメータのスイープ」と「異なる入力データの使用」の2つに焦点を当て、複数シミュレーション実行の方法について解説していきたいと思います。なしでも使用できますが、その場合シミュレーションは逐次実行となります。この関数を使用すると、より効率的に複数シミュレーションを実行できます。関数の使い方を確認するために、1回のシミュレーションを行ってみましょう。いうオブジェクトを渡してあげる必要があります。関数にモデル名を指定することで作ることができます。関数に渡せばシミュレーションを実行することができます。オブジェクトの配列を渡してあげることで、その配列分のシミュレーションを行ってくれる点です。個分のメモリを確保するためです。回シミュレーションが行われました。回とも同じシミュレーションが行われています。この配列の各要素の設定を変更することで、異なるパラメータや入力データを使ったシミュレーションを一気に行うことができますので、早速やり方を確認していきましょう。関数を使用することで、シミュレーションに使用されるパラメータを変更することができます。in.setVariable("K",10);モデル内で使用されているパラメータ名と値をセットで指定します。in)に入れ直す必要があります。オブジェクトの配列を作成し、各オブジェクトにそれぞれ異なるパラメータを指定してあげることで、様々なパラメータを用いた並列シミュレーションを行うことができます。例として、以下のような超簡単なモデルで挙動を確認してみます。シミュレーション結果を確認しやすいように、データのエクスポート設定も変更しておきます。関数で実行してみましょう。スイープさせる値を配列で作成します。個分のメモリーを確保するためです。=2ちゃんと各シミュレーションごとにゲインが変化していますね。関数を入れてしまわないように気をつけましょう。回シミュレーションしてしまうことになります。これでパラメータをスイープして複数シミュレーションを行うことができるようになりました。次は入力データを複数使用する方法を見ていきましょう。関数を使用することで、シミュレーションの外部入力を各シミュレーションごとに変更することもできます。超簡単なモデルで試してみましょう。各シミュレーションの入力データを用意します。{u1,u2,u3};入力データはベクトルになることが多いので、セル配列や行列でまとめておくとループで使いやすくなります。ループで各要素に入力データを設定するだけです。複数のシミュレーションの状況・結果を可視化する複数の大規模シミュレーションを並列実行している場合、各シミュレーションの進捗状況をリアルタイムに確認できると便利ですよね。シミュレーションマネージャーを使うと、複数シミュレーションの状況を確認したり、シミュレーション結果を簡単に可視化することができます。