行列の対角要素を取り出す diag|scilab入門
行列の対角要素を取り出す場合には、diagを用います。
行列の対角要素や角線より上の部分、角線より下の部分を取り出すことにします。または、同じ大きさの行列を作ることもできます。
目次
対角部分:diag
行列の対角要素の指定や成分を取り出すことにします。
(1) 行列の対角要素を1,2,3,5とする
。
1. D=diag([1,2,3,5])
1は行番号ですので、打ち込まないで下さい。
–> D=diag([1,2,3,5])
D =
1. 0. 0. 0.
0. 2. 0. 0.
0. 0. 3. 0.
0. 0. 0. 5.
(2)行列の対角要素を取り出す
行列Aの対角要素を取り出し、行列Bとする。
1. A=[4 1 5; 3 -1 1; 2 -1 -3]
2. B=diag(A)
–>A=[4 1 5; 3 -1 1; 2 -1 -3]
A =
4. 1. 5.
3. – 1. 1.
2. – 1. – 3.
–>B=diag(A)
B =
4.
– 1.
– 3.
行列のAの1行1列目の4、2行2列目の-1、3行3列目の-3を取り出しています。
(3) 行列の対角要素を取り出し、同じ大きさの行列を作る
元の行列と同じ大きさで、対角要素を取り出す場合、もう一度置きなおすことによって作ることができる。
1. A=[4 1 5; 3 -1 1; 2 -1 -3];
2. B=diag(A)
3. D=diag(B)
–>A=[4 1 5; 3 -1 1; 2 -1 -3];
–>B=diag(A)
B =
4.
– 1.
– 3.
–>D=diag(B)
D =
4. 0. 0.
0. – 1. 0.
0. 0. – 3.
(4) 対角線より上の部分を取り出す
対角線より上の部分に要素を配置した行列を作る。
行列X=[ 2 3 4]の要素を、行列Aの2列目から配置する場合には、diag(X,1)とするとXの要素を2列目から表示します。
1. X=2:4
2. A=diag(X,1)
–>X=2:4
X =
2. 3. 4.
–>A=diag(X,1)
A =
0. 2. 0. 0.
0. 0. 3. 0.
0. 0. 0. 4.
0. 0. 0. 0.
(5) 対角線より下の部分に要素を取り出す
対角線より下の部分に要素を配置した行列を作る。
行列x=[ 2 3 4]の要素を、行列Aの3行目から配置する。diag(X,-2)とするとXの要素を3行目から表示します。
1. X=2:4
2. A=diag(X,-2)
–>X=2:4
X =
2. 3. 4.
–>A=diag(X,-2)
A =
0. 0. 0. 0. 0.
0. 0. 0. 0. 0.
2. 0. 0. 0. 0.
0. 3. 0. 0. 0.
0. 0. 4. 0. 0.
数値を変えて色々と計算してみてください。
色々とアイデアが浮かんでくるかもしれません。
関連記事
-
scilabが5.5.2 にバージョン アップになりました!
scilab は常にバージョンアップされています。 しかも無料です。 ちょっとシ …
-
ゼロ行列や定数行列を作る |scilab入門
ゼロ行列や定数行列を作ることにします。 ゼロ行列:zeros 定数行列:on …
-
ifによる分岐と関係演算子・論理演算子
繰り返し処理に if による分岐と関係演算子・論理演算子 を用いることにします。 …
-
多項式を用いた線形システムの定義 syslin
多項式による伝達関数や線形すステムの定義は、syslinを用いて定義できます。 …
-
行列をコレスキー分解をする|scilab入門
正定値対称行列を持つ連立一次方程式 Ax=b の場合にガウスの消去法の他にコレス …
-
連立一次方程式を解いてみる|scilab入門
逆行列 inv と (¥)を用いて、簡単なの連立一次方程式を解いてみました。 次 …
-
逆行列 inv|scilab入門
逆行列は、方程式を解くときに使います。 逆行列 inv を使用して解く場合につい …
-
行列の和の計算|scilab入門
行列の和の計算についてです。 2つの行列の和について考えます。例として3行3 …
-
2次元プロットにグリッドを追加:xgrid|グラフィック
グラフのデータを比較したいとか、見やすくしたい場合には、グリッドを入れて表示させ …
-
階乗 prod|scilab入門
階乗の計算には prod を使用します。 例えば 1から10までの階乗を計算する …