[問題] 有關對abs取微分之後再將此函數丟進迴圈裡面跑的的問題已回收

看板MATLAB作者 (八八八)時間17年前 (2009/02/25 11:21), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
syms theta1 theta2 R z1 f See Soo Seo S31 Eeff_1 Eeff_2 f W1 W2 Vp L1 L2 .. .. .. See=(z1-j.*(2*R*t2+t1))./(z1+j.*(2*R*t2+t1)); Soo=(z1+j.*(2*R*ct2+ct1))./(z1-j.*(2*R*ct2+ct1)); Seo=(z1-j.*(R.*(t2-ct2)-ct1))./(z1+j.*(R.*(t2-ct2)-ct1)); S31=0.25.*(See+Soo-2*Seo); F=abs(S31) T=diff(F,'f') K=diff(T,'f') 我需要將T跟K丟進回圈利用牛頓法解, 而顯示出來的T=abs(1, .....)=>matlab是這樣顯示,我查了一下好像對絕對值微分一次 K=signum(1, .....) 然後我就直接複製進入回圈 一些變數的的宣告: theta1=[95 105 115]; . . . R=[0.6:0.1:2]; for i=1:length(theta1) L1(i)=theta1(i)*pi/180*Vp/(W1*Eeff_1); for j=1:length(R) theta2(j)=(1/2*asin(2*R(j)*sin(2*theta1(i)*pi/180))+pi/2)*180/pi; L2(j)=theta2(j)*pi/180*Vp/(W1*Eeff_2); f(i,j)=abs(1,R(j)...theta1(i)....)...程式很長 . . 下面先省略...因為跑到abs的地方就出錯了, matlab的錯誤顯示地方: Error using ==> abs Incorrect number of inputs. Error in ==> C:\MATLAB6p5\work\design_graph_2_roots.m On line 33 ==> f1(i,j)=abs(1,.......); 這裡我就不懂了...跪求高手>"< -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.170.47
文章代碼(AID): #19fBakjz (MATLAB)