ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

sim

動的システムのシミュレーション

構文

simOut = sim('model', 'ParameterName1',Value1,'ParameterName2', Value2...);
simOut = sim('model', ParameterStruct);
simOut = sim('model', ConfigSet);

説明

simOut = sim('model', 'ParameterName1',Value1,'ParameterName2', Value2...); は、パラメーターの名前と値のペア ParameterName1Value1、および ParameterName2Value2 を使って、Simulink® によるブロック線図 model のシミュレーションを開始します。

simOut = sim('model', ParameterStruct); は、構造体 ParameterStruct に指定されているパラメーター値を使って、Simulink によるブロック線図 model のシミュレーションを開始します。

simOut = sim('model', ConfigSet); は、モデルのコンフィギュレーション セット ConfigSet に指定されているコンフィギュレーションを使って、Simulink によるブロック線図 model のシミュレーションを開始します。

入力引数

model

シミュレーションを実行するモデルの名前。

ParameterName

パラメーターの実行名。MATLAB® のコマンド ウィンドウから次を入力することで、モデル vdp のシミュレーション パラメーターのリストを取得します。

configSet = getActiveConfigSet('vdp')
configSetNames = get_param(configSet, 'ObjectParameters')  

このコマンドは、‘StopTime’‘SaveTime’‘SaveState’‘SaveOutput’‘SignalLogging’ などのシミュレーション パラメーターを含む、複数のオブジェクト パラメーターを一覧表示します。

さらに、sim コマンドは以下のパラメーターも受け入れます。

パラメーター説明
ConcurrencyResolvingToFileSuffix

(ラピッド アクセラレータ モードのみ) 次の場合、モデルのファイル名にこの接尾辞文字列を付加します (ファイル拡張子の前)。

  • モデルが To File ブロックを含んでいる

  • sim コマンドを parfor から呼び出す

Debug 'on' | {'off'} | cmds

シミュレーションをデバッグ モードで開始します (詳細は、「デバッガーのグラフィカル ユーザー インターフェイス」を参照)。このオプションの値には、デバッガーの開始後にデバッガーに送信されるコマンドのセル配列を使用できます。

既定の設定は 'off' です。

RapidAcceleratorParameterSets

(ラピッド アクセラレータ モードのみ) parfor でラピッド アクセラレータのシミュレーションを実行するための実行時パラメーターを含んだ構造体を返します。「ラピッド アクセラレータ モードでの parfor の sim」を参照してください。

RapidAcceleratorUpToDateCheck {'on'} | 'off'

(ラピッド アクセラレータ モードのみ) 最新チェックを有効または無効にします。この値を 'off' に設定すると、ソフトウェアによる最新チェックが実行されません。parfor から sim コマンドを呼び出す場合は、この値を 'off' に設定します。

既定の設定は 'on' です。

SrcWorkspace {base} | current | parent

モデル内で定義された MATLAB 式を評価するワークスペースを指定します。SrcWorkspace の設定が、アクセラレータ モードで実行される参照モデルに影響を与えることはありません。

既定の設定は、ベース ワークスペースです。

TimeOut timeout

時間を秒単位で指定し、シミュレーションを実行させます。TimeOut の値よりも長い時間モデルを実行すると、ソフトウェアにより警告が発行され、シミュレーションが停止します。

Trace 'minstep', 'siminfo', 'compile' {''}シミュレーションのトレース機能を有効にします (1 つまたは複数をコンマ区切りのリストで指定)。
  • 'minstep' は、解の変化があまりにも突然で可変ステップ ソルバーのステップ サイズで許容誤差値を満足させることができないような場合にシミュレーションを停止するように指定します。

  • 'siminfo' は、シミュレーションの開始時に有効なシミュレーション パラメーターの簡単な概要を与えます。

  • 'compile' は、ブロック線図モデルのコンパイル フェーズを表示します。

既定の設定では、Simulink ソフトウェアは警告メッセージを発行して、シミュレーションを継続します。

Value

シミュレーション パラメーターの値。次を入力することで、シミュレーション パラメーター StopTime の値を取得します。

configSetParamValue = get_param(configSet, 'StopTime')

ParameterStruct

構造体。パラメーターの設定が入ります。

ConfigSet

コンフィギュレーション セット。

出力引数

simOut

シミュレーション出力 (ログが作成された時間、状態および信号) を含んだ Simulink.SimulationOutput オブジェクト

定義

sim コマンドの 3 つの形式のいずれでも、[コンフィギュレーション パラメーター] ダイアログ ボックスで定義されたパラメーターをオーバーライドする設定が入力になっています。元のコンフィギュレーション値はシミュレーションの最後に復元されます。

Model ブロックを用いたモデルの場合、パラメーター指定の適用先は最上位モデルとなります。

sim コマンドの詳細は、「sim コマンドを使用したシミュレーションの実行」を参照してください。

モデル vdp のシミュレーションを、絶対許容誤差を 1e-5 にして、ラピッド アクセラレータ モードで実行します。状態は xoutNew に、出力は youtNew に保存されます。

sim コマンド ライン オプションによるモデルのシミュレーション

sim コマンドにパラメーター名と値のペアを指定します。

simOut = sim('vdp','SimulationMode','rapid','AbsTol','1e-5',...
            'StopTime', '30', ... 
            'ZeroCross','on', ...
            'SaveTime','on','TimeSaveName','tout', ...
            'SaveState','on','StateSaveName','xoutNew',...
            'SaveOutput','on','OutputSaveName','youtNew',...
            'SignalLogging','on','SignalLoggingName','logsout')
Simulink.SimulationOutput:
       tout: [95x1 double]
    xoutNew: [95x2 double]
    youtNew: [95x2 double]

構造体での sim コマンド ライン オプションによるモデルのシミュレーション

sim コマンドに、パラメーター名と値のペアの構造体 paramNameValStruct を指定します。

paramNameValStruct.SimulationMode = 'rapid';
paramNameValStruct.AbsTol         = '1e-5';
paramNameValStruct.SaveState      = 'on';
paramNameValStruct.StateSaveName  = 'xoutNew';
paramNameValStruct.SaveOutput     = 'on';
paramNameValStruct.OutputSaveName = 'youtNew';
simOut = sim('vdp',paramNameValStruct)
Simulink.SimulationOutput:
    xoutNew: [65x2 double]
    youtNew: [65x2 double]

コンフィギュレーション セットでの sim コマンド ライン オプションによるモデルのシミュレーション

sim コマンドに、パラメーター名と値のペアをコンフィギュレーション セット mdl_cs で指定します。

mdl = 'vdp';
load_system(mdl)
simMode = get_param(mdl, 'SimulationMode');
set_param(mdl, 'SimulationMode', 'rapid')
cs = getActiveConfigSet(mdl);
mdl_cs = cs.copy;
set_param(mdl_cs,'AbsTol','1e-5',...
         'SaveState','on','StateSaveName','xoutNew',...
         'SaveOutput','on','OutputSaveName','youtNew')
simOut = sim(mdl, mdl_cs);
set_param(mdl, 'SimulationMode', simMode)

参考

| | | | |

この情報は役に立ちましたか?