Indice tenseur d'ordre 4 ou plus dans Matlab

Résolu/Fermé
beamatlab Messages postés 2 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 20 juillet 2008 - 18 juil. 2008 à 10:38
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 20 juil. 2008 à 19:03
Bonjour,


Je cherche à obtenir la valeur minimum d'un tenseur d'ordre 4, ainsi que les indices
qui correspondent à cette valeur. Je trouve le minimum de la façon suivante :
min(min(min(min(X)))) où X est mon tenseur.
Puis je cherche les indices (a,b,c,d) qui correspondent à cette valeur minimum.
J'ai essayé avec Find, mais cela ne marche que pour les matrices à deux indices...
Quelqu'un saurait-il récupérer les quatre indices de la valeur mimnimum de mon tenseur ?

Merci par avance,

2 réponses

Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 835
18 juil. 2008 à 16:39
Salut
[a b c d]=ind2sub(size(X),find(X==min(min(min(min(X))))));
A plus
2
beamatlab Messages postés 2 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 20 juillet 2008
20 juil. 2008 à 11:02
Merci, la méthode fonctionne très bien!
0
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 1 835 > beamatlab Messages postés 2 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 20 juillet 2008
20 juil. 2008 à 19:03
De rien ;-)
À la prochaine
0
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
18 juil. 2008 à 16:54
https://www.mathworks.com/help/matlab/index.html;jsessionid=9a4045cd89bc00f279eea12317a0?/access/helpdesk/help/techdoc/ref/min.html=&http://www.google.fr/search%3fhl=fr&q=matlab+min&btnG=Rechercher&meta=
min retourne l'indice, avec une boucle en les récupérant à chaque foi, tu devrais y arriver.
[M,a]=min(X);
[N,b]=min(M);
[O,c]=min(N);
[m,d]=min(O);
0