Cómo sustituir las diagonales de una matriz en Matlab y Octave
Para reemplazar los elementos en la diagonal de una matriz use la función spdiags()
spdiags(v,i,m)
- El primer parámetro es una matriz con los nuevos elementos diagonale
- El segundo parámetro es el índice que identifica la diagonal (0 es la diagonal principal)
- El tercer parámetro es el nombre de la matriz.
La función cambia los valores en la i-ésima diagonal de la matriz.
¿Qué son las diagonales de una matriz? La diagonal principal de la matriz comienza en la parte superior derecha y termina en la parte inferior izquierda. Por ejemplo, la diagonal principal de la matriz M son los elementos 1, 5, 9.
Ejemplos
Ejemplo 1
Crear una matriz
>> M=[1 2 3 ; 4 5 6 ; 7 8 9]
M =
1 2 3
4 5 6
7 8 9
Para reemplazar los elementos en la diagonal principal use la función spdiags()
>> spdiags([-1;-2;-3],0,M)
El resultado de salida es una nueva matriz con los nuevos elementos -1, -2, -3 en la diagonal principal.
-1 2 3
4 -2 6
7 8 -3
Ejemplo 2
Para reemplazar los elementos sobre la diagonal principal, escriba
>> spdiags([-1;-2],1,M)
El resultado de salida es una nueva matriz con los nuevos elementos -1, -2 en la diagonal sobre la diagonal principal
1 -1 3
4 5 -2
7 8 9