このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。
循環行列は1つ先のステップの要素を循環して置き換えることで,1つ前の行から各行が得られるという特性をもっています。たとえば,次のコマンドを使って,要素が一个
、b
、c
のシンボリック循環行列を作成します。
syms a b c a = [a b c;c b;b c)
A = [A, b, c] [c, A, b] [b, c, A]
一个
は循環行列なので,各行の要素の和と各列の要素の和は等しくなります。1行目のすべての要素の和を求めます。
(1: sum ())
a + b + c
1行目の要素の和と2列目の要素の和が等しいかどうかをチェックするには,関数总
を使用します。
总(和(A (1:)) = = sum ((:, 2)))
和は等しくなります。
逻辑1
この例から,シンボリックオブジェクトの使用が,正規のMATLAB®の数値オブジェクトを使用するのと同様に非常に簡単であることがわかります。
関数信谊
を使用すると,シンボリック行列またはシンボリックベクトルの定義を,その要素を事前に定義しなくても行うことができます。この場合,信谊
関数は,シンボリック行列を作成すると同時にその要素を生成します。この関数は,生成するすべての要素を同一のフォーム,基数(有効な変数名でなければなりません),行インデックス,列インデックス,を使って表示します。信谊
の最初の引数を使って,生成される要素の名前のベースを指定します。任意の有効な変数名をベースとして使用できます。名前が有効な変数名かどうかをチェックするには,関数isvarname
を使用します。既定の設定では,信谊
は行インデックスと列インデックスをアンダースコアで区切ります。たとえば,要素A1_1,……, A2_4
の2行4列の行列一个
を作成します。
A = sym('A', [2 4])
A = [A1_1 A1_2、A1_3 A1_4] [A2_1、A2_2 A2_3, A2_4]
生成される行列要素名の形式を制御するには,最初の引数内で% d
を指定します。
A = sym('A%d%d', [2 4])
A = [a11, a12, a13, a14] [a21, a22, a23, a24]
信谊
コマンドは,行列を数値型からシンボリック型に変換するために,特に有効です。次のコマンド
一个= hilb (3)
は3行3列のヒルベルト行列を作成します。
A = 1.0000 0.5000 0.3333 0.5000 0.3333 0.2500 0.3333 0.2500 0.2000
一个
に信谊
を適用すると
=符号()
上記の3行3列のヒルベルト行列の正確なシンボリック型を得ることができます。
(1、1/2、1/3)=(1/2、1/3、1/4)(1/3、1/4、1/5)
数値からシンボリックへの変換の詳細は,数値のシンボリックへの変換を参照してください。