Look-Up Table(n-D)​で3次元以上の配列を​使用するには、テーブ​ルデータ欄をどのよう​に記述すれば良いです​か。

16 visualizaciones (últimos 30 días)
MathWorks Support Team
MathWorks Support Team el 29 de Jun. de 2009
Editada: MathWorks Support Team el 30 de Mayo de 2024
Look-Up Table(n-D)で3次元以上の配列を使用するには、テーブルデータ欄をどのように記述すれば良いですか。

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 30 de Mayo de 2024
Editada: MathWorks Support Team el 30 de Mayo de 2024
3次元以上の配列は、数値を直接並べて定義できないため、(1)MATLABのコマンドウィンドウ上やモデルのコールバック関数等に3次元配列を定義し、その変数名を記述したり、(2)多次元配列を作成する関数を使用して定義します。
(1)変数を定義する方法
たとえば、次のコマンドにより2×3×3の3次元テーブルデータ[Z]を作成します。
Z(:,:,1) = [ 111 121 131; 211 221 231];
Z(:,:,2) = [ 112 122 132; 212 222 232];
Z(:,:,3) = [ 113 123 133; 213 223 233];
テーブルデータに、[Z]と記述します。
なお、データ読み込み等のシミュレーション前に行うべき処理は、モデルコールバック機能を用いてシミュレーション前に自動実行されるようにしておくと便利です。
たとえば、「ファイル」メニューから「モデルプロパティ」を選択し、「コールバック」ペインの「モデルプリロード関数」に上記コマンドを記述しておくと、モデルを開いた時にデータの読み込みを行います。
モデルコールバック機能の詳細につきましては、関連ソリューション「Simulinkモデルの起動時に、モデル内で使用している変数の値を自動的に設定することができますか?」をご参照ください。
(2)関数を利用する方法
多次元配列を作成する関数 cat 等を使ってテーブルデータに記述します。cat 関数は cat(dim,A1,A2,...) という書式で実行され、配列A1,A2,...が結合したdim-次元配列を生成します。
たとえば、3次元配列を作成する場合
cat(3,[1 2;3 4],[5 6;7 8])
のように記述します。
4次元以上の配列はcat関数を入れ子に組んで作成します。たとえば、
cat(4,cat(3,[1 2;3 4],[5 6;7 8]),cat(3,[1 2;3 4],[5 6;7 8]))
のように記述します。
多次元配列の作成方法は、マニュアルに詳述されていますのでそちらも併せてご参照ください。
● MATLAB ヘルプドキュメント:多次元配列の作成

Más respuestas (0)

Categorías

Más información sobre 行列および配列 en Help Center y File Exchange.

Productos


Versión

R2007a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!