Main Content

Simulink.VariableUsage

モデル内の変数とブロックの間の関係に関する情報を保存します。

説明

Simulink.VariableUsage オブジェクトは、モデル内で変数が使用されている場所について記述します。

この情報は次の目的に使用されます。

  • ファイルおよびワークスペースに変数を永続的に保存する準備を行います。モデルの変数の保存の詳細については、Simulink モデルの変数とオブジェクトの保存場所の決定を参照してください。

  • 使用されていない変数を排除することで、保存する必要がある変数の数を減らします。

  • 変数を分割し、チームで作業するときに変数の所有権を確立できるように準備します。

モデル内での変数の使用を解析するには、関数 Simulink.findVars と一緒に Simulink.VariableUsage オブジェクトを使用します。関数は Simulink.VariableUsage オブジェクトを返し、引数として受け取ります。詳細については、Simulink.findVars を参照してください。

Simulink.VariableUsage オブジェクトは、列挙データ型の使用についても記述できます。

Simulink.VariableUsage オブジェクトにプロパティ値を設定できるのは、Simulink.VariableUsage コンストラクターまたは関数 Simulink.findVars だけです。それ以外の場合はプロパティは読み取り専用になります。

作成

関数 Simulink.findVars によって Simulink.VariableUsage オブジェクトが返されます。

Simulink.findVars を使用するときのフィルターとして変数の使用オブジェクトを作成するには、以下で説明する関数 Simulink.VariableUsage を使用します。

説明

variableUsageObj = Simulink.VariableUsage(varNames,sourceName) は、変数 varNames を記述する Simulink.VariableUsage オブジェクトの配列を作成します。このコンストラクターは、各オブジェクトの Name プロパティを varNames で指定されたいずれかの変数名に設定し、すべてのオブジェクトの Source プロパティを sourceName で指定されたソースに設定します。varNames は読み込まれたモデルで使用されていない変数で指定できます。

入力引数

すべて展開する

ターゲットの変数の名前。文字ベクトル、または文字ベクトルの cell 配列として指定します。このコンストラクターは、それぞれの変数名に対応する Simulink.VariableUsage オブジェクトを作成します。

例: 'k'

例: {'k','asdf','fuelFlow'}

データ型: char | cell

ターゲットの変数を定義するソースの名前。文字ベクトルとして指定します。たとえば MATLAB® ベース ワークスペースやデータ ディクショナリをソースとして指定できます。このコンストラクターは、返されるそれぞれの Simulink.VariableUsage オブジェクトの SourceType プロパティも特定して設定します。

例: 'base workspace'

例: 'myModel'

例: 'myDictionary.sldd'

データ型: char

プロパティ

すべて展開する

この プロパティ は読み取り専用です。

オブジェクトで記述された変数または列挙データ型の名前。文字ベクトルとして返されます。

この プロパティ は読み取り専用です。

記述された変数を定義しているワークスペースまたはデータ ディクショナリの名前。文字ベクトルとして返されます。次の表にいくつか例を示します。

Source の値意味
'base workspace'MATLAB ベース ワークスペース
'MyModel'モデル MyModel のモデル ワークスペース
'MyModel/Mask1'モデル MyModel のマスク ブロック Mask1 のマスク ワークスペース
'sldemo_fuelsys_dd_controller.sldd''sldemo_fuelsys_dd_controller.sldd' という名前のデータ ディクショナリ

次の表に、関数 Simulink.findVars で列挙データ型を検索して Simulink.VariableUsage オブジェクトを作成する場合の例をいくつか示します。

Source の値意味
'BasicColors.m'MATLAB ファイル 'BasicColors.m' で列挙型が定義されています。
''列挙型が動的に定義され、ソースはありません。
'sldemo_fuelsys_dd_controller.sldd''sldemo_fuelsys_dd_controller.sldd' という名前のデータ ディクショナリで列挙型が定義されています。

この プロパティ は読み取り専用です。

変数を定義しているワークスペースのタイプ。文字ベクトルとして返されます。可能な値は次のとおりです。

  • 'base workspace'

  • 'model workspace'

  • 'mask workspace'

  • 'data dictionary'

関数 Simulink.findVars で列挙データ型を検索して Simulink.VariableUsage オブジェクトを作成する場合は次の値を指定できます。

  • 'MATLAB file'

  • 'dynamic class'

  • 'data dictionary'

この プロパティ は読み取り専用です。

変数を使用するブロックまたは列挙型を使用するモデル。文字ベクトルの cell 配列として返されます。各文字ベクトルが変数を使用するブロックまたは列挙型を使用するモデルの名前に対応します。このプロパティは関数 Simulink.findVars から取り込まれます。

オブジェクト関数

すべて折りたたむ

ベース ワークスペースで変数 kSimulink.VariableUsage オブジェクトを返します。

var = Simulink.VariableUsage('k','base workspace');

関数 Simulink.findVars のフィルターとして var を使用できます。

ベース ワークスペースで whos コマンドから返される変数ごとに 1 つのオブジェクトを含む Simulink.VariableUsage オブジェクトの配列を返します。

vars = Simulink.VariableUsage(whos,'base workspace')

モデル ワークスペースですべての変数を記述する Simulink.VariableUsage オブジェクトの配列を返します。

hws = get_param('mymodel','ModelWorkspace');
vars = Simulink.VariableUsage(hws.whos,'MyModel')

マスク ワークスペースですべての変数を記述する Simulink.VariableUsage オブジェクトの配列を返します。

maskVars = get_param('mymodel/maskblock','MaskWSVariables');
vars = Simulink.VariableUsage(maskVars,'mymodel/maskblock');

バージョン履歴

R2012b で導入