octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Matlab compatibility or not Matlab compatibility


From: Julien Bect
Subject: Matlab compatibility or not Matlab compatibility
Date: Fri, 12 Feb 2016 16:22:50 +0100
User-agent: Mozilla/5.0 (Windows NT 6.1; rv:38.0) Gecko/20100101 Thunderbird/38.2.0

Dear all,

I would like to hear your opinion on the following issue.

Context : I am preparing a patch for bugs #43925 and #44498.

http://savannah.gnu.org/bugs/?43925
http://savannah.gnu.org/bugs/?44498

The point is to ensure that size-related functions (isscalar, isvector, ismatrix...) respect the result provided by the "size" function, even when it has been overloaded for a user-defined class.

This is a both a Matlab compatibility issue (and there are already several xtests for this in tests/classes/classes.tst) and a regression (the behaviour was correct
(1) in 3.8.2).

My question is about ndims. It turns out that Matlab behaves in a different way for this specific function : the documentation says that ndims returns "the length of the size vector of the array",

http://fr.mathworks.com/help/matlab/ref/ndims.html?s_tid=gn_loc_drop

but I have a very simple user-defined class for which size(x) always returns [3 4 5] and still ndims(x) returns 2.

In my opinion this should be considered as a bug in Matlab
(I have tested on Matlab R2012a and R2015a, I haven't access to R2015b right now)... but I would like to hear what others think.

@++
Julien


(
1) for some functions at least, such as isscalar, isvector and ismatrix... I haven't checked the others.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]