Octaveでの行列定義の仕方を下に示します.行ごとに定義し, 「 ; 」 は改行の意味です.
行列a , bともに, 2×2行列です.ここでは,行列b は 行列a の転置行列としました.
行列 a 行列 b
行列の和,差,積を下に示します.前項で定義した行列a,bに対して,数値の加減乗と同様に計算できます.
和 差 積分
行列aの逆行列は, inv(a) で定義されます.行列aと,逆行列a-1をかけると単位行列になることも確かめられます.
行列a 逆行列a-1 単位行列E = a*a-1
転置行列 c.' と,転置行列の複素共役をとる共役転置行列 c' を下に示します.
複素数の行列c 転置行列 c.' 共役転置行列 c'
行列d の対角要素のみを引き出して縦行列を得る diag( d ) を下に示します.
また,縦行列に対しての diag() 処理は, 縦行列を対角要素に,他は0要素とする対角行列を得ることができます.
行列d diag(d) diag( diag(d) )
行列eの行列要素を取り出す方法を示します. e(2,3) では,行列eの (2,3)要素の取り出しを示しています.
e(:,2) では, 「:」は任意の要素を示しており,ここでは2列目の任意要素が取り出されます.
また, e(3, [1,3] ) のようにして, 3行目の1列要素と,3行目の3列要素を指定して取り出すこともできます.
行列eのサイズは,size(e) でもとめ, 3×3行列だと分かります.
行列e 行列要素の指定 行列サイズ
1×3行列fに対して, 行数か列数の大きい方(3)を返すのが length(f) です.
横ベクトルに対しては,要素和を求めるのが sum(f) です. 一般の行列に対しては,sum(f)は 列ごとの和を返します.
行列f 行列g
行列の合成の仕方を下に記します.行列の合成は,型があえば,[ h i ] のように簡単に行えます.
[ h; i.' ] では,iの転置行列を作ってから合成している例です.
行列h,i 行列の合成
|
|