Sto cercando di replicare il prodotto Kron usando solo repmat e reshape e credo di essere abbastanza vicino ma non riesco a fare l'ultimo rimodellamento corretto. Particolarmente Ho problema nel ridisegnare A
Replica il tensore di Kronecker con repmat in MATLAB
Per rendere le cose semplici let supponiamo di avere
A=[1 3; 2 4]
B=[5 10; 10 5]
quindi il mio kron(A,B)
sta per essere una matrice 4x4.
kron=[5 10 15 30
10 5 30 15
10 20 20 40
20 10 40 20]
sto procedendo in questo modo:
Y=repmat(B,2,2)
X=A(:);
X=repmat(X,1,2)';
X=X(:);
X=repmat(X,1,2);
che mi dà il seguente 8x2 Matrix:
X= [1 1
1 1
2 2
2 2
3 3
3 3
4 4
4 4]
Non posso capire come fare il rimodellare corretta per ottenere la mia matrice 4x4:
X=[1 1 3 3
1 1 3 3
2 2 4 4
2 2 4 4]
T gallina sarò in grado di calcolare: X.*Y=kron(A,B)
Sarai sempre nella dimensione 2? – BillBokeey
quando si esegue 'kron (A, B)' Ottengo '[5 10 15 30; 10 5 30 15; 10 20 20 40; 20 10 40 20] ' –
@ m.s. Ho ragione, ho invertito Y nel mio matlab, lo sto correggendo ora. – Gio