Main Content

setVariable

SimulationInput オブジェクトまたは Simulation オブジェクトを使用してシミュレーション用の変数値を設定する

説明

s = setVariable(s,varname,varvalue) は、Simulink.SimulationInput オブジェクトまたは Simulation オブジェクトの s を使用して構成されたシミュレーション用に変数 varname の値を値 varvalue に設定します。この構文を使用して、ベース ワークスペースまたはデータ ディクショナリ内の変数の値を指定します。指定した変数値は、シミュレーション中にベース ワークスペースまたはデータ ディクショナリに保存された変数値をオーバーライドし、シミュレーションが完了すると元に戻ります。

  • sSimulationInput オブジェクトの場合、シミュレーション全体で、使用する変数ごとに 1 つの値のみを指定できます。

  • sSimulation オブジェクトの場合、シミュレーションの開始時に使用する変数ごとに 1 つの値を指定し、シミュレーション中に調整可能な値を定義する変数には新しい値を指定できます。

SimulationInput オブジェクトまたは Simulation オブジェクトで複数の変数の値を指定できます。各変数の値を一度に 1 つずつ指定します。

s = setVariable(s,varname,varvalue,Workspace=mdl) は、モデル mdl のモデル ワークスペース内の変数 varname の値を設定します。

既定では、引数 Workspace を指定しなかった場合、SimulationInput オブジェクトまたは Simulation オブジェクトの変数のスコープは、各オブジェクトに固有のグローバル ワークスペースになります。SimulationInput オブジェクトまたは Simulation オブジェクトのグローバル ワークスペース内の変数は、ベース ワークスペースとデータ ディクショナリ内の同じ名前の変数をオーバーライドしますが、モデル ワークスペース内の同じ名前の変数はオーバーライドしません。

この構文を使用して、SimulationInput オブジェクトまたは Simulation オブジェクトを使用して構成されたシミュレーション用にモデル ワークスペース内の変数の値を指定します。

すべて折りたたむ

SimulationInput オブジェクトを使用して変数の値を指定します。

モデルを開きます。

openExample('simulink/OpenTheModelExample');

このモデルの SimulationInput オブジェクトを作成します。

simIn = Simulink.SimulationInput('ex_sldemo_househeat');

変数 cost の値を 50 に設定します。

simIn = setVariable(simIn,'cost',50);

既定では、この変数のスコープはグローバル ワークスペースです。

モデルのシミュレーションを実行します。

out = sim(simIn);

SimulationInput オブジェクトを使用してモデル ワークスペースの変数の値を変更します。

モデルを開きます。

openExample('simulink/OpenTheModelExample');

このモデルの SimulationInput オブジェクトを作成します。

simIn = Simulink.SimulationInput('ex_sldemo_househeat');

変数 cost の値を 50 に設定し、スコープをモデル ワークスペースに設定します。

simIn = setVariable(simIn,'cost',50,'Workspace','ex_sldemo_househeat');

モデルのシミュレーションを実行します。

out = sim(simIn);

入力引数

すべて折りたたむ

変数値を設定するシミュレーション仕様またはシミュレーション。Simulink.SimulationInput オブジェクトまたは Simulation オブジェクトとして指定します。

SimulationInput オブジェクトは、シミュレーションで使用する初期状態、外部入力、モデル パラメーター値、ブロック パラメーター値、変数値など、シミュレーションの仕様を表します。最初の入力引数を SimulationInput オブジェクトとして指定した場合、次のようになります。

  • 変数ごとにシミュレーション全体で使用する 1 つの値のみを指定できます。

  • 戻り引数として SimulationInput オブジェクトを指定する必要があります。

Simulation オブジェクトはシミュレーションを表し、シミュレーションを制御および操作するためのインターフェイスを提供します。最初の入力引数を Simulation オブジェクトとして指定した場合、次のようになります。

  • 変数ごとに、シミュレーションで使用する初期値を指定できます。

  • シミュレーション中、調整可能なパラメーターを定義する変数値を変更できます。

  • 戻り引数として Simulation オブジェクトを指定することはオプションです。

例: simin = setVariable(simin,"k",10) は、SimulationInput オブジェクト simin に保存されているシミュレーション構成で変数 k の値を 10 に設定します。

例: sm = setVariable(sm,"k",10) は、Simulation オブジェクト sm で表されたシミュレーションで変数 k の値を 10 に変更します。

変数の名前。string または文字ベクトルとして指定します。

例: simin = setVariable(simin,"k",10) は、SimulationInput オブジェクト simin に保存されているシミュレーション構成で変数 k の値を 10 に設定します。

例: sm = setVariable(sm,"k",10) は、Simulation オブジェクト sm で表されたシミュレーションで変数 k の値を 10 に変更します。

変数の値。MATLAB 式として指定します。

例: simin = setVariable(simin,"k",10) は、SimulationInput オブジェクト simin に保存されているシミュレーション構成で変数 k の値を 10 に設定します。

例: sm = setVariable(sm,"k",10) は、Simulation オブジェクト sm で表されたシミュレーションで変数 k の値を 10 に変更します。

変数値を指定するモデル ワークスペース。string または文字ベクトルとして指定します。

例: simin = setVariable(simin,"k",10,Workspace="MyModel") は、SimulationInput オブジェクト simin に保存されているシミュレーション構成で、MyModel という名前のモデルのモデル ワークスペース内の変数 k の値を 10 に設定します。

例: sm = setVariable(sm,"k",10,Workspace="MyModel") は、Simulation オブジェクト sm で表されたシミュレーションで、MyModel という名前のモデルのモデル ワークスペース内の変数 k の値を 10 に変更します。

出力引数

すべて折りたたむ

指定した変数値を含むシミュレーション仕様またはシミュレーション。Simulink.SimulationInput オブジェクトまたは Simulation オブジェクトとして返されます。

関数 setVariable を使用して SimulationInput オブジェクトで変数の値を指定した場合、戻り引数として SimulationInput オブジェクトを指定する必要があります。

関数 setVariable を使用して Simulation オブジェクトで変数の値を指定した場合、戻り引数の割り当てはオプションです。

ヒント

  • SimulationInput オブジェクトまたは Simulation オブジェクトから変数を削除するには、関数 removeVariable を使用します。

  • 特定の変数について SimulationInput オブジェクトまたは Simulation オブジェクトで設定された値を取得するには、関数 getVariable を使用します。たとえば、次のコマンドは、MyVariable という名前の変数の値を取得します。

    varvalue = getVariable(s,"MyVariable");

バージョン履歴

R2017a で導入

すべて展開する