matrix repetition on diagonal
Mostrar comentarios más antiguos
Hi, I have a matrix
T =
1 0
1 1
and i want to generate this matrix
T =
1 0 0 0
1 1 0 0
0 1 1 0
0 0 1 1
please note that T is not exactly repeating at diagonal. Can anyone help me with this ? thank you
Respuesta aceptada
Más respuestas (2)
Stephen23
el 7 de Sept. de 2017
I suspect you might want something like this:
>> T = [1,0;1,1];
>> N = 4;
>> R = zeros(1,N);
>> C = zeros(1,N);
>> R(1:size(T,1)) = T(:,1);
>> C(1:size(T,2)) = T(1,:);
>> toeplitz(R,C)
ans =
1 0 0 0
1 1 0 0
0 1 1 0
0 0 1 1
>>
but without a clear explanation of the algorithm that generates the output matrix from the input matrix, this is just a guess.
2 comentarios
Shajeel Iqbal
el 7 de Sept. de 2017
Andrei Bobrov
el 7 de Sept. de 2017
+1. Very good method!
KSSV
el 7 de Sept. de 2017
T = ones(4,1) ;
K = diag(T)+diag(T(1:end-1),-1)
Categorías
Más información sobre Operating on Diagonal Matrices en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!