logo

MATLABで特別な行列を作成する関数 📂プログラミング

MATLABで特別な行列を作成する関数

ゼロ行列

  • zeros(): ゼロ行列を返す。
  • zeros(n): $n\times n$ ゼロ行列を返す。
  • zeros(m,n): $n\times m$ ゼロ行列を返す。
  • zeros(size(A)): 行列Aと同じ大きさのゼロ行列を返す。

全要素が1の行列

  • ones(): 全要素が1の行列を返す。ただし、二つの行列の間の演算のためには、そのまま1を使う方が便利だ。誰が見ても下のコードの方がずっとシンプルだ。
  • ones(n): 全要素が1の$n\times n$ 行列を返す。
  • ones(m,n): 全要素が1の$n\times m$ 行列を返す。
  • ones(size(A)): 行列Aと同じ大きさの全要素が1の行列を返す。
A=[1 2 3; 4 -2 3; 5 3 7]

ones(size(A))./A
1./A

4.png

単位行列

  • eye(): 単位行列を返す。
  • eye(n): $n\times n$ 単位行列を返す。
  • eye(m,n): $n\times m$ 単位行列を返す。
  • eye([m,n]): 主対角線の成分が1で、その他の成分は0の$n\times m$ 単位行列を返す。
  • eye(n,'like',A): 行列Aと同じデータタイプの$n\times n$ 単位行列を返す。つまり、Aが複素行列であれば、複素単位行列を返す。サイズを指定しなければ、Aと同じ大きさの行列を返す。
eye([2,3])
eye(3,6)

A=[1+i 3-i]
eye(3, 'like', A)
eye(3,4 'like', A)

6.png

乱数

  • rand(): 0から1の間でランダムに1つの乱数を返す。各数が引かれる確率はすべて同じだ。マトラブ公式ホームページで「一様に分布した乱数」という説明は、これを意味する。
  • rand(n): 0から1の間の乱数で構成された$n\times n$ 行列を返す。
  • rand(m,n): 0から1の間の乱数で構成された$m\times n$ 行列を返す。
  • rand(n,'like',A): 行列Aと同じデータタイプの乱数で構成された$n\times n$ 行列を返す。つまり、Aが複素行列であれば、複素行列を返す。サイズを指定しなければ、Aと同じ大きさの行列を返す。