Error using size and Error in cross

if isvector(a) && isvector(b)
if (nargin == 2 && (length(a) ~= 3 || length(b) ~= 3)) || ...
(nargin == 3 && (size(a,dim)~=3 || size(b,dim)~=3))
error(message('MATLAB:cross:InvalidDimAorBForCrossProd'))
end
Error using size
Dimension argument must be a positive integer scalar within indexing range.
Error in cross (line 24)
(nargin == 3 && (size(a,dim)~=3 || size(b,dim)~=3))

1 个评论

Sorry Jenice , I believe you are not allowed to post the file which is copyright by Mathworks in a public forum like this.

请先登录,再进行评论。

回答(2 个)

Walter Roberson
Walter Roberson 2018-12-26
do not pass 3 or more arguments to cross unless you are deliberately telling it which dimension to process .
you were passing 4 arguments in before and that is not defined at all.
If you need to take A cross B cross C then you will need to make multiple calls to cross.

类别

帮助中心File Exchange 中查找有关 MATLAB Coder 的更多信息

标签

提问:

2018-12-26

重新打开:

2019-1-15

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by