Main Content

Simulink.SimulationInput

複数または個々のシミュレーション用にモデルを変更する Simulink.SimulationInput オブジェクトを作成する

説明

Simulink.SimulationInput オブジェクトを使用して、モデルを変更し、その変更した状態でシミュレーションを実行できます。これらの変更は、モデルに一時的に適用されます。Simulink.SimulationInput オブジェクトを使用して、初期状態、モデル パラメーター、ブロック パラメーター、外部入力、および変数を変更できます。Simulink.SimulationInput オブジェクトにより、関数 setPreSimFcnsetPostSimFcn を使用して、各シミュレーションの開始時と終了時に MATLAB® 関数が実行されるように指定することもできます。

作成

説明

simIn = Simulink.SimulationInput(mdlName)Simulink.SimulationInput オブジェクトを作成して mdlName で指定したモデルのシミュレーションを構成します。

入力引数

すべて展開する

モデル名。string または文字ベクトルとして指定します。モデル名を指定するときに、.slx 拡張子を含めないでください。

プロパティ

すべて展開する

SimulationInput オブジェクトが作成されるモデルの名前。

シミュレーション用のモデルの初期状態。Simulink.op.ModelOperatingPoint オブジェクトとして指定します。

シミュレーションのモデルに追加される外部入力。

変更されるモデルのブロック パラメーター。

変更されるモデルの変数。

変更されるモデルのモデル パラメーター。

シミュレーションの開始前に実行する MATLAB 関数。

各シミュレーションの完了後に実行する MATLAB 関数。

シミュレーションの簡単な説明。文字配列または string として指定します。

R2024a 以降

シミュレーションを実行する前にモデルに適用するバリアント コンフィギュレーションの名前。string または文字ベクトルとして指定します。

このプロパティは、バリアント ブロックやバリアント パラメーターなどのバリアント要素を使用し、さらに Variant Manager for Simulink® を使用してモデル用に作成されたバリアント コンフィギュレーションがあるモデルに適用されます。このようなモデルについて、シミュレーションの実行前に、モデルの階層構造全体から特定のバリアント パスを有効にできるバリアント コンフィギュレーションを指定できます。

例については、Run Simulations for Variant Models Using Variant Configurationsを参照してください。

例: "LinInterExpNoNoise"

データ型: char | string

オブジェクト関数

applyToModelSimulationIntput オブジェクトのコンフィギュレーションをモデルに適用する
getVariantConfigurationGet name of variant configuration from SimulationInput object
loadVariablesFromExternalSourceLoad variables from a custom file into Simulink.SimulationInput object
loadVariablesFromMATFileLoad variables from MAT file into Simulink.SimulationInput object
removeVariableRemove variable from SimulationInput or Simulation object
setBlockParameterSet block parameter values for simulation using SimulationInput or Simulation object
setExternalInputSimulationInput オブジェクトまたは Simulation オブジェクトを使用して、最上位の入力端子の外部入力データを指定する
setInitialStateSpecify initial state for simulation using SimulationInput or Simulation object
setPostSimFcn 各シミュレーションの完了後に実行する MATLAB 関数を設定
setPreSimFcnSpecify MATLAB function to run before start of each simulation on Simulink.SimulationInput object
setModelParameterSet model parameter values for simulation using SimulationInput or Simulation object
setVariableSimulationInput オブジェクトまたは Simulation オブジェクトを使用してシミュレーション用の変数値を設定する
setVariantConfigurationSet variant configuration for simulation using SimulationInput object
showContentsView summary of specification in SimulationInput or Simulation object
validateValidate contents of SimulationInput object

すべて折りたたむ

SimulationInput オブジェクトを作成してモデル sldemo_househeat のシミュレーションを構成します。

モデルを開きます。

openExample("simulink_general/sldemo_househeatExample") 

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

mdl = "sldemo_househeat";
simIn = Simulink.SimulationInput(mdl);

この例では、SimulationInput オブジェクトの配列を作成してモデル vdp の複数のシミュレーションを構成する方法を示します。

モデルを開きます。

openExample("simulink_general/VanDerPolOscillator")

for ループを使用して SimulationInput オブジェクトの配列を作成します。

mdl = "vdp";
simIn(1:10) = Simulink.SimulationInput(mdl);

Simulink.SimulationInput オブジェクトを使用してモデル sldemo_househeat のシミュレーションにおけるブロック パラメーターの値を変更します。

モデルを開きます。

openExample("sldemo_househeat")

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

mdl = "sldemo_househeat";
simIn(1:10) = Simulink.SimulationInput(mdl);

関数 setBlockParameter を使用して Set Point という名前のブロックの Value パラメーターを指定します。

for i = 1:10
simIn(i) = simIn(i).setBlockParameter('ex_sldemo_househeat/Set Point', ...
	'Value',num2str(rand()*10+70));
end

モデルをシミュレートします。

out = sim(simIn);

この例では、Dataset オブジェクトを使用して、Simulink.SimulationInput オブジェクトに外部入力を設定する方法を説明します。

モデルを開きます。

mdl = 'sldemo_mdlref_counter';
open_system(mdl);

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

t = (0:0.01:10)';
ds = Simulink.SimulationData.Dataset;
ds = setElement(ds,1,timeseries(5*ones(size(t)),t));
ds = setElement(ds,2,timeseries(10*sin(t),t));
ds = setElement(ds,3,timeseries(-5*ones(size(t)),t));

Simulink.SimulationInput オブジェクトを作成し、外部入力を設定します。

simIn = Simulink.SimulationInput('sldemo_mdlref_counter');
simIn = setExternalInput(simIn,ds);

モデルをシミュレートします。

out = parsim(simIn);

バージョン履歴

R2017a で導入

すべて展開する