Fonction M2SCI
Last update : 08/04/2004
mtlb_max - Fonction d'émulation de la fonction Matlab max
Description
Dans plusieurs cas particuliers, la fonction max se comporte différemment dans Matlab et dans Scilab :
-
-
-
Avec des valeurs complexes : La fonction Matlab max peut être utilisée
avec des complexes mais pas la fonction Scilab.
-
En cas d'appel avec deux paramètres d'entrée : La fonction Matlab max traite les valeurs
suivant la première dimension qui n'est pas 1 alors que Scilab traite l'ensemble des valeurs de l'entrée.
-
En cas d'appel avec deux paramètres d'entrée : si l'une d'elles est une matrice vide, Scilab
retourne un message d'erreur alors que Matlab renvoie [].
-
En cas d'appel avec trois paramètres d'entrée : si le paramètre dim est plus grand que
le nombre de dimensions de le première entrée, Scilab retourne un message d'erreur alors que Matlab
retourne le premier paramètre.
La fonction [r[,k]] = mtlb_max(A[,B[,dim]]) est utilisée par
mfile2sci pour remplacer [r[,k]] = max(A[,B[,dim]]) quand il n'était pas
possible de savoir ce qu'étaient les paramètres d'entrée pendant la conversion d'un code Matlab vers Scilab. Cette fonction va
déterminer la sémantique correcte pendant l'exécution. Pour obtenir un code plus performant
on peut remplacer les appels à mtlb_max :
-
-
-
En cas d'appel avec un paramètre d'entrée, si A est un scalaire ou un vecteur
[r[,k]] = mtlb_max(A) peut être remplacé par max(A)
-
En cas d'appel avec un paramètre d'entrée, si A est une matrice
[r[,k]] = mtlb_max(A) peut être remplacé par max(A,"r")
-
En cas d'appel avec deux paramètres d'entrée, si A et B
sont des matrices réelles et ne sont pas des matrices vides,
[r[,k]] = mtlb_max(A,B) peut être remplacé par max(A,B)
-
En cas d'appel avec trois paramètres d'entrée, si dim est inférieur
au nombre de dimensions de A,
[r[,k]] = mtlb_max(A,[],dim) peut être remplacé par max(A,dim)
Attention : mtlb_max ne doit pas être utilisée pour une programmation manuelle.
See Also
firstnonsingleton,
Authors
-
V.C.