Algorithm for an elimination matrix
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Luciano Campos
el 18 de Mzo. de 2016
Comentada: Luciano Campos
el 18 de Mzo. de 2016
Hi everybody, Can anybody help me to design a Matlab code function that creates an elimination matrix L of size (.5m(m+1),m^2) such that, for a (m,m) square matrix A:
vech(A)=L vec(A)
where the vech and vec operators are such that, for example, if:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/158172/image.png)
Thanks for your help,
best,
0 comentarios
Respuesta aceptada
James Tursa
el 18 de Mzo. de 2016
Editada: James Tursa
el 18 de Mzo. de 2016
m = size(A,1); % Size of A
T = tril(ones(m)); % Lower triangle of 1's
f = find(T(:)); % Get linear indexes of 1's
k = m*(m+1)/2; % Row size of L
m2 = m*m; % Colunm size of L
L = zeros(m2,k); % Start with L'
x = f + m2*(0:k-1)'; % Linear indexes of the 1's within L'
L(x) = 1; % Put the 1's in place
L = L'; % Now transpose to actual L
Más respuestas (0)
Ver también
Categorías
Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!