bonjour tout le monde je veux extraire les deux diagonales d'une matrice carré(4*4) a une matrice (2*4)
exemple
je sais pour la premier diagonale c'est la fonction diag mais pour le deuxieme es qu'il y'a une fonction
merci
bonjour tout le monde je veux extraire les deux diagonales d'une matrice carré(4*4) a une matrice (2*4)
exemple
je sais pour la premier diagonale c'est la fonction diag mais pour le deuxieme es qu'il y'a une fonction
merci
Essaie ceci :
Ou ceci en manipulant les indices :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 >> M = reshape(1:16, 4, []).'; >> diag(flipud(M)) ans = 13 10 7 4
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 >> M(1:size(M,1)+1:end) ans = 1 6 11 16 >> M(size(M,1):size(M,1)-1:end-1) ans = 13 10 7 4
Merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part A=[ diag(M)' ; diag(flipud(M))' ]
Tu peux économiser un opérateur de transposition en faisant :
Voir également : Quelle est la différence entre ' et .' ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part A = [diag(M) diag(flipud(M))].';
Partager