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




