MATLAB: ссылка на сообщения об ошибках - PullRequest
8 голосов
/ 30 декабря 2010

Кто-нибудь знает какие-либо ссылки на сообщения об ошибках в MATLAB?Сообщения об ошибках в MATLAB часто бывают очень короткими, и иногда я не понимаю, что они имеют в виду.

Ответы [ 3 ]

3 голосов
/ 30 декабря 2010

Некоторые из наиболее распространенных объясняются в этом техническом примечании MathWorks .

3 голосов
/ 30 декабря 2010

Вот некоторые из наиболее распространенных ошибок:

%# create two arrays, one 3-by-3, one 4-by-4 (see 'help magic' for details about them)
>> m3 = magic(3);
>> m4 = magic(4);

%# matrix multiplication error. Arrays must be X-by-Y and Y-by-Z
>> m3*m4
??? Error using ==> mtimes
Inner matrix dimensions must agree.

%# cannot multiply (add, subtract...) element-wise if not the same number of elements 
>> m3.*m4
??? Error using ==> times
Matrix dimensions must agree.

%# m3 is 3-by-3, and thus has only 9 elements. There is no element #10
>> m3(10)
??? Index exceeds matrix dimensions.

%# there is also no element #-1 
>> m3(-1)
??? Index exceeds matrix dimensions.

%# can only index with integers or logicals
>> m3(2.2)
??? Subscript indices must either be real positive integers or logicals.

%# m5 has not been defined yet. This is the "probably a typo"-error
>> m5(3)
??? Undefined function or method 'm5' for input arguments of type 'double'.

%# Cannot assign the elements of m4 to m3, because they don't have the same number of elements.
%# m3(:) = m4(1:9) would work.
>> m3(:) = m4(:)
???  In an assignment  A(:) = B, the number of elements in A and B
must be the same

Кроме того, всякий раз, когда внутри встроенной функции Matlab возникает загадочная ошибка, обычно это происходит потому, что вы назвали эту функцию неправильной (например, с массивом ячеек, в котором ожидаются строки, или с NaN, где ожидались векторы с конечным числом элементов) .

2 голосов
/ 30 декабря 2010

Это руководство лучше, чем ничего ... http://en.wikibooks.org/wiki/MATLAB_Programming/Error_Messages

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...