mtlb_e
Matlab extraction emulation function
Description
Matlab and Scilab extraction behave differently in some particular cases:
When extracting data from a matrix with a vector as index: Matlab returns a row vector and Scilab returns a column vector.
When extracting data from a character string matrix: due to the fact that character string matrices in Matlab can be addressed as any other matrix (each character can be addressed), extraction in such a type of matrix does not differ from other. But in Scilab it can't be done so and
part
function has to be used.
The function mtlb_e(B,k)
is used by
mfile2sci
to replace A=B(k)
when it was not
possible to know what were the operands while porting Matlab code to Scilab. This function will
determine the correct semantic at run time. If you want to have a
more efficient code it is possible to replace mtlb_e
calls:
If
B
is a vectorA=mtlb_e(B,k)
may be replaced byA=B(k)
If
B
is a matrixA=mtlb_e(B,k)
may be replaced byA=B(k).'
If
B
is a character string matrix and k is a scalar or a vectorA=mtlb_e(B,k)
may be replaced byA=part(B,k)
Caution: mtlb_e has not to be used for hand coded functions. |
See also
- Matlab-Scilab_character_strings — Generally speaking about...
- part — Extraction of characters from strings
Report an issue | ||
<< mtlb_double | Compatible fonctions | mtlb_echo >> |