Main Content

eye

固定小数点のプロパティをもつ単位行列の作成

説明

I = eye('like',p) は、プロトタイプ引数 p と同じ固定小数点プロパティおよび実数/複素数をもつスカラー 1 を返します。出力 Ip と同じ numerictype および fimath プロパティをもちます。

I = eye(n,'like',p) は、主対角に 1 をもち、それ以外に 0 をもつ p と同様の nn 列の単位行列を返します。

I = eye(n,m,'like',p) は、p と同様の nm 列の単位行列を返します。

I = eye(sz,'like',p)p と同様の配列を返します。サイズ ベクトル szsize(I) を定義します。

すべて折りたたむ

プロトタイプ fi オブジェクト p を作成します。

p = fi([],1,16,14);

p と同じ固定小数点のプロパティをもつ 3 行 4 列の単位行列を作成します。

I = eye(3,4,'like',p)
I = 
     1     0     0     0
     0     1     0     0
     0     0     1     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 14

語長が 16、小数部の長さが 15 で OverflowActionWrap に設定された符号付き fi オブジェクトを作成します。

format long
p = fi([],1,16,15,'OverflowAction','Wrap');

p と同じ numerictype プロパティをもつ 2 行 2 列の単位行列を作成します。

X = eye(2,'like',p)
X = 
   0.999969482421875                   0
                   0   0.999969482421875

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Signed
            WordLength: 16
        FractionLength: 15

        RoundingMethod: Nearest
        OverflowAction: Wrap
           ProductMode: FullPrecision
               SumMode: FullPrecision

p のデータ型で 1 を表現することはできないため、値は飽和します。出力 fi オブジェクト X は、p と同じ numerictype および fimath プロパティをもちます。

入力引数

すべて折りたたむ

I の最初の次元のサイズ。整数値として指定します。

  • 整数の入力引数が n だけの場合、Inn 列の正方単位行列です。

  • n0 の場合、I は空行列です。

  • n が負の場合、0 として扱われます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

I の 2 番目の次元のサイズ。整数値として指定します。

  • m0 の場合、I は空行列です。

  • m が負の場合、0 として扱われます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

I のサイズ。2 つ以下の整数値の行ベクトルとして指定します。

  • sz の要素が 0 の場合、I は空行列です。

  • sz の要素が負の場合、その要素は 0 として扱われます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

fi オブジェクトまたは数値変数として指定されるプロトタイプ。

値 1 によって p の数値型がオーバーフローする場合、付加された fimathOverflowAction プロパティの指定にかかわらず出力は飽和します。出力に対して実行される以降のすべての演算は、付加された fimath のルールに従います。

データ型: fi | single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

ヒント

b = cast(a,'like',p) 構文を使用してアルゴリズム コードとは別にデータ型を指定すると、以下のことができます。

  • 異なるデータ型でアルゴリズム コードを再利用

  • データ型指定を切り離してアルゴリズムを整理し、データ型ごとにステートメントを切り替え

  • アルゴリズム コードの可読性を向上

  • 固定小数点データ型と浮動小数点データ型を切り替えてベースラインを比較

  • アルコリズム コードを変更しないで固定小数点設定のバリエーションを切り替え

バージョン履歴

R2015a で導入