このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
matlab.System クラス
System object の基底クラス
説明
matlab.System
は System object の基底クラスです。クラス定義ファイルでは、この基底クラス (またはこの基底クラスから派生する別のクラス) から、オブジェクトをサブクラス化しなければなりません。サブクラス化により、この基底クラスで提供されている実装メソッドおよびサービス メソッドを使用してオブジェクトを作成できるようになります。matlab.System
基底クラスから直接継承するには、クラス定義ファイルの最初の行で次の構文を入力します。ここで、ObjectName
は構成するオブジェクト名です。
classdef ObjectName < matlab.System
メモ
コードで使用する各 matlab.System
メソッドに対し、Access = protected
と設定しなければなりません。
matlab.System
クラスは handle
クラスです。
メソッド
オーサリング メソッド (保護)
getNumInputsImpl | System object への入力数 |
isInputDataTypeMutableImpl | System object の入力データ型が変更できるかどうかの設定 |
isInputSizeMutableImpl | System object の入力サイズが変更できるかどうかの設定 |
isInputComplexityMutableImpl | System object の入力の実数/複素数が変更できるかどうかの設定 |
isInputDirectFeedthroughImpl | 入力の直達のステータス |
getInputDimensionConstraintImpl | Dataflow Subsystem で用いる入力の次元制約を定義 |
getNumOutputsImpl | System object からの出力数 |
getOutputDataTypeImpl | 出力端子のデータ型 |
getOutputSizeImpl | 出力端子のサイズ |
isOutputComplexImpl | 出力端子の複素数/実数 |
isOutputFixedSizeImpl | 固定サイズまたは可変サイズの出力端子 |
getOutputDimensionConstraintImpl | Dataflow Subsystem で用いる出力の次元制約を定義 |
getDiscreteStateSpecificationImpl | 離散状態のサイズ、データ型および複素数/実数 |
isDiscreteStateSpecificationMutableImpl | 離散状態がデータ型を変更できるかどうかの制御 |
getDiscreteStateImpl | 離散状態プロパティ値 |
getSampleTimeImpl | サンプル時間タイプ、オフセット時間およびサンプル時間を指定 |
allowModelReferenceDiscreteSampleTimeInheritanceImpl | 離散サンプル時間に関するモデル参照のサンプル時間継承状態 |
getGlobalNamesImpl | MATLAB システム ブロックのグローバル変数名 |
getInterfaceImpl (Simulink) | System object をメッセージまたはデータとして設定 |
isTunablePropertyDataTypeMutableImpl | 調整可能なプロパティがデータ型を変更できるかどうかの設定 |
isDoneImpl | データ終了フラグ |
getSimulateUsingImpl | [シミュレーション実行方法] パラメーターの値を指定 |
getSimulinkFunctionNamesImpl | System object で使用する Simulink 関数名の登録 |
showFiSettingsImpl | System object の固定小数点データ型タブの表示 |
supportsMultipleInstanceImpl | Simulink の For Each Subsystem における System object のサポート |
getImpulseResponseLengthImpl | Dataflow Subsystem で用いる入力効果の長さを定義 |
getPropertyGroupsImpl | System object 表示のプロパティ グループ |
showSimulateUsingImpl | [シミュレーション実行方法] パラメーターの可視性 |
getIconImpl | ブロック アイコンとして表示される名前 |
getHeaderImpl | System object 表示のヘッダー |
getInputNamesImpl | MATLAB System ブロック入力端子の名前 |
getOutputNamesImpl | MATLAB System ブロック出力端子の名前 |
isInactivePropertyImpl | 非アクティブなプロパティのステータス |
setupImpl | System object の初期化 |
stepImpl | システム出力と状態更新の式 |
resetImpl | System object の状態のリセット |
releaseImpl | リソースの解放 |
processTunedPropertiesImpl | 調整可能なプロパティが変更された場合のアクション |
validatePropertiesImpl | System object のプロパティ値の検証 |
processInputSpecificationChangeImpl | 入力サイズ、実数/複素数、またはデータ型が変更されたときのアクションの実行 |
validateInputsImpl | System object への入力の検証 |
updateImpl | 入力に基づくオブジェクト状態の更新 |
loadObjectImpl | MAT ファイルからの System object の読み込み |
saveObjectImpl | MAT ファイルへの System object の保存 |
infoImpl | System object に関する情報 |
クエリ関数 (保護)
setProperties | System object の作成時に名前と値のペアを使用したプロパティ値を設定 |
propagatedInputComplexity | Simulink の伝播時の入力の実数/複素数 |
propagatedInputDataType | Simulink の伝播時の入力のデータ型 |
propagatedInputFixedSize | Simulink の伝播時の入力の固定サイズ ステータス |
propagatedInputSize | Simulink の伝播時の入力のサイズ |
createSampleTime | サンプル時間指定オブジェクトの作成 |
getSampleTime | サンプル時間のクエリ |
getCurrentTime | MATLAB System ブロックの現在のシミュレーション時間 |
setNumTicksUntilNextHit (Simulink) | Simulink サンプル時間の目盛りの数を設定する |
displayScalarObject | スカラー オブジェクトの表示形式 |
getHeader | 表示ヘッダー テキストを作成して返す |
getFooter | 表示フッター テキストを作成して返す |
実装メソッド (パブリック)
nargin | System object の入力引数の数 |
nargout | System object の出力引数の数 |
getNumInputs | System object を呼び出すために必要な入力数 |
getNumOutputs | System object の呼び出しによる出力数 |
setup | System object の 1 回限りの設定タスク |
reset | System object の内部状態のリセット |
step | System object のアルゴリズムの実行 |
release | リソースを解放し、System object のプロパティ値と入力特性の変更を可能にします。 |
clone | System object の複製 |
isDone | データ終了ステータス |
isLocked | System object が使用中かどうかの判定 |
例
基本的な System object の作成
この例では、AddOne
という基本的な System object を作成する方法を示します。
MATLAB で、[新規]、[System object]、[標準] を選択します。新しい System object の既定の構文とコメントを含む、新しいエディター ウィンドウが開きます。
クラス AddOne
の名前を変更します。既定のテンプレートを変更して、クラスを次のようにします。
classdef AddOne < matlab.System % ADDONE Compute an output value that increments the input by one methods (Access = protected) % Implement algorithm. Calculate y as a function of input x. function y = stepImpl(~,x) y = x + 1; end end end
AddOne
のインスタンスを作成し、入力を指定してオブジェクトを実行することで、このオブジェクトを使用します。
addingObject = AddOne; x = 5; addingObject(x)
ans = 6
詳細
属性
System object™ クラスおよびプロパティに属性を適用できます。属性の詳細については、クラスの属性またはプロパティの属性を参照してください。
次の表に、MATLAB® System object クラスに適用できる属性を示します。
属性名 | 説明 |
StrictDefaults | 仕様変更の変更を制限するメソッドの既定値をコントロールします。
既定では、これらのメソッドは Simulink® で使用される System object については、この属性は入力サイズの変更のみを制限します。Simulink は既に、調整可能なプロパティ、入力および状態について、実数/複素数およびデータ型を制限しているためです。 |
クラス属性値はクラス名の前にかっこで囲んで指定します。たとえば次のようにします。
classdef (StrictDefaults) MySystemObject < matlab.System
次の属性をカスタム System object の任意のプロパティに適用できます。
Nontunable | Nontunable を使用すると、オブジェクト使用中のプロパティ値の変更が防止されます。既定の設定では、すべてのプロパティは調整可能です。Nontunable 属性は、変更すると副次的影響が出るプロパティをロックするのに便利です。またこの属性は、処理中に一定であると仮定されているプロパティ値をロックするのにも便利です。入力端子や出力端子の数に影響を及ぼすプロパティは、常に Nontunable に指定します。 |
DiscreteState | DiscreteState を使用すると、getDiscreteState メソッドを使用したときに状態値が表示されるようにプロパティがマークされます。 |
バージョン履歴
R2011b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)