mtlb_e — Fonction d'émulation de l'extraction Matlab
Dans plusieurs cas particuliers, l'extraction se comporte différemment dans Matlab et dans Scilab :
Lors de l'extraction de données d'une matrice avec comme indice un vecteur : Matlab retourne un vecteur ligne alors que Scilab retourne un vecteur colonne.
Lors de l'extraction de données d'une matrice d'une chaîne de caractères : étant donné que
les matrices de chaînes de caractères peuvent être adressées comme tout autre type de
matrice dans Matlab (chaque caractère peut être adressé),
l'extraction à partir d'une telle matrice ne change pas des autres types. Mais dans Scilab
ceci ne peut être fait de la même manière et la fonction part
doit être utilisée.
La fonction mtlb_e(B,k)
est utilisée par
mfile2sci
pour remplacer A=B(k)
quand il n'était pas
possible de savoir ce qu'étaient les opérandes 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_e
:
Si B
est un vecteur
A=mtlb_e(B,k)
peut être remplacé par A=B(k)
Si B
est une matrice
A=mtlb_e(B,k)
peut être remplacé par A=B(k).'
Si B
est une chaîne de caractères et
k est une scalaire ou un vecteur
A=mtlb_e(B,k)
peut être remplacé par A=part(B,k)
Attention : mtlb_e
ne doit pas être utilisée pour une programmation manuelle.