ドキュメンテーションヘルプ センター
最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。
クロネッカー テンソル積
K = kron(A,B)
例
K = kron(A,B) は、行列 A と B のクロネッカー テンソル積を返します。A が m 行 n 列の行列で、B が p 行 q 列の行列の場合、kron(A,B) は、A の要素と行列 B 間でのすべての取り得る積から構成される m*p 行 n*q 列の行列になります。
A,B
A
B
m
n
p
q
kron(A,B)
m*p
n*q
すべて折りたたむ
ブロック対角行列を作成します。
4 行 4 列の単位行列と、対角に反復させる 2 行 2 列の行列を作成します。
A = eye(4); B = [1 -1;-1 1];
kron を使用して、クロネッカー テンソル積を求めます。
kron
K = 8×8 1 -1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 -1 1 0 0 0 0 0 0 0 0 1 -1 0 0 0 0 0 0 -1 1
結果は、8 行 8 列のブロック対角行列になります。
要素を反復して、行列のサイズを拡大します。
すべての要素が 1 である 2 行 2 列の行列と、2 行 3 列のその要素を反復させる行列を作成します。
A = [1 2 3; 4 5 6]; B = ones(2);
kron を使って、クロネッカー テンソル積を計算します。
K = 4×6 1 1 2 2 3 3 1 1 2 2 3 3 4 4 5 5 6 6 4 4 5 5 6 6
結果は、4 行 6 列のブロック行列になります。
この例ではスパース ラプラス演算子行列を可視化します。
2 次元、n 行 n 列グリッド上で、離散ラプラス演算子の行列表現は、n*n 行 n*n 列のスパース行列になります。各行または各列に非ゼロ要素が最大 5 個あります。行列は、1 次元の差分演算子のクロネッカー積として生成できます。この例では、n = 5 となります。
n*n
n = 5
n = 5; I = speye(n,n); E = sparse(2:n,1:n-1,1,n,n); D = E+E'-2*I; A = kron(D,I)+kron(I,D);
spy を使って、スパース パターンを可視化します。
spy
spy(A,'k')
入力行列。スカラー、ベクトルまたは行列として指定します。A または B のいずれかがスパースの場合、kron は非ゼロの要素のみを乗算し、結果もスパースになります。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical 複素数のサポート: あり
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
A が m 行 n 列の行列で、B が p 行 q 列の行列の場合、A と B のクロネッカー テンソル積は、B を A の各要素で乗算することで得られる大規模な行列になります。
A⊗B=[a11Ba12B⋯a1nBa21B⋮a22B⋮⋯⋱a2nB⋮am1Bam2B⋯amnB].
たとえば、2 つのシンプルな 2 行 2 列の行列の場合、次が生成されます。
A=[1−2−10], B=[4−323]A⊗B=[1 · 41 · −3−2 · 4−2 · −31 · 21 · 3−2 · 2−2 · 3−1 · 4−1 · −30 · 40 · −3−1 · 2−1 · 30 · 20 · 3]=[4−3−8623−4−6−4300−2−300].
使用上の注意事項および制限事項:
コード生成では、この関数のスパース行列入力はサポートされません。
この関数は GPU 配列を完全にサポートしています。詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
cross | dot | hankel | toeplitz
cross
dot
hankel
toeplitz
この例の変更されたバージョンがシステム上にあります。代わりにこのバージョンを開きますか?
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office