我被這個錯誤卡住了:爲什麼不是標量的結果?
在賦值A(I)= B中,B和I中的元素數必須相同。 (1)=((u-uc)。^ 2)+((y-yc)。^ 2) - (d。^ 2); 我不明白,爲什麼這不會得到一個skalar?因爲元素都是標量。應該改變什麼來獲得標量?
問候
編輯:感謝sloede,所有的輸入都是標量,但我仍然得到這個錯誤
在分配A(I)= B,B中元素的個數,我必須 相同。
Error in myfun (line 7)
yres(1)=sqrt(((u - uc).^2) + ((y - yc).^2)) -d;
Error in fsolve (line 241)
fuser = feval(funfcn{3},x,varargin{:});
Error in modfsolve (line 26)
x= fsolve(@myfun,x0,options,uc,d,spacing_amplitude,spacing_width);
Caused by:
Failure in initial user-supplied objective function evaluation. FSOLVE
cannot continue.*
或正常矢量化的功能(如果可能的話): 您可以通過添加自己的函數中的下列建設解決這個問題(當然它改變您的需要/你的參數)可以插入命令'whos y uc y uc y yc d',並報告輸出?輸入變量或分配的變量肯定存在問題,'whos'命令將允許您查看這些變量的屬性。 – 2012-07-06 07:02:31