mtlb_sum
Fonction d'émulation de la fonction Matlab sum
Description
Dans plusieurs cas particuliers, la fonction sum
se comporte différemment dans Matlab et dans Scilab :
En cas d'appel avec un paramètre d'entrée : La fonction Matlab
sum
traite les valeurs en suivant la première dimension qui n'est pas 1 alors que la fonction Scilabsum
traite toutes les valeurs de l'entrée.En cas d'appel avec deux paramètres d'entrée : La fonction Matlab
sum
peut être utilisée avec le second paramètre donnant une dimension du premier paramètre qui n'existe pas alors que la fonction Scilabsum
retourne un message d'erreur.
La fonction mtlb_sum(A[,dim])
est utilisée par
mfile2sci
pour remplacer sum(A[,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_sum
:
En cas d'appel avec un paramètre d'entrée, si
A
est une matrice vide, un scalaire ou un vecteur,mtlb_sum(A)
peut être remplacé parsum(A)
En cas d'appel avec un paramètre d'entrée, si
A
est une matrice non-vide,mtlb_sum(A)
peut être remplacé parsum(A,1)
En cas d'appel avec un paramètre d'entrée, si
A
est hypermatrice,mtlb_sum(A)
peut être remplacé parsum(A,firstnonsingleton(A))
En cas d'appel avec deux paramètres d'entrée, si
dim
est inférieure au nombre de dimensions deA
mtlb_sum(A,dim)
peut être remplacé parsum(A,dim)
Attention : mtlb_sum ne doit pas être utilisée pour une programmation manuelle. |
Voir aussi
- firstnonsingleton — Trouve la première dimension qui n'est pas 1
Report an issue | ||
<< mtlb_strrep | Fonctions compatibles | mtlb_t >> |