Programming and Data Types    

空行列

少なくとも1つの次元がゼロに等しい行列は、空行列 と呼ばれます。最もシンプルな空行列は、0行0列です。より複雑な行列の例は、05列、あるいは10-by-0-by-20です。

0行0列行列を作成するには、値を指定せずに鍵括弧を利用します。

関数zeros, ones, rand, eyeを使って、他のサイズの空配列を作成できます。たとえば、0行5列行列を作成するには、つぎのようにします。

空行列に対する演算

空行列に関する基本的なモデルは、mn列の行列に対し設定される任意の演算で、mnが結果の次元で、m または nのどちらかがゼロでも可能です。結果の大きさは、同じ関数で計算したものと同じで、結果の内容がゼロで見積もられたものです。

たとえば、水平方向への連結

は、ABの行数が等しいことが必要です。それで、Amn列で、Bmp列ならば、Cm行(n+p列になります)。これは、mnpのいずれかがゼロでも成り立ちます。

MATLABの中のほとんどの演算は、行ベクトルまたは列ベクトルを生みます。これは、結果が空行ベクトルになる場合も可能です。

または、空列ベクトル

も可能です。MATLAB の中のすべての行列を使って、次元に関する整合性に関するルールが成り立ちます。つぎの例題の中で、1行3列の行列を0行3列の空行列を付加しようとする試みは、エラーになります。

summaxのようなMATLAB関数は、次元を減らす機能をもっています。行列を引数とすると、これらの関数は、結果をベクトルとして出力します。また、ベクトルを入力すると、スカラを出力します。空を入力すると、つぎのような結果になります。

If または Whileと空行列の利用

ifまたはwhileステートメントの式部分が空行列になる場合は、MATLABは式をfalseとして評価します。つぎの例は、Aが空配列なのでステートメントS0を実行します。


 コマンド/関数の双対性 エラーとワーニング