MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   Maple论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=35)
-   -   [问题] 求助迭代法程序修改 (https://www.labfans.com/bbs/showthread.php?t=12804)

cheng 2011-02-22 20:36

求助迭代法程序修改
 
restart: iterate:=proc(PI,SB,B,H,N[1],N[2],D[1],D[2],G[1],G[2],R[1],R[2],delta) local B1,A[0],SS,R[0],S[0],A[1],A[2]; R:=X->(H+R[2])/(sin(B1-X))+R[2]; S:=(X,Y)->X*Y^(2)-((R[1]^(2)-H^(2)))/(tan(B1))+(R[2]^(2)-H^(2))/(tan(B1-X))+R[2]^(2)*(PI/(2)+B1-X)+R[1]^(2)*(PI/(2)-B1); while SB=0 do B1:=(PI*B)/(180);A[0]:=0; SS:=evalf((PI*((D[1])^(2)*G[1]+(D[2])^(2)*G[2]))/(4*N[1]*N[2]));R[0]:=evalf(R(A[0]));S[0]:=evalf(S(A[0],R[0])); if S[0]-SS<0 then A[0]:=A[0]+delta[]; else A[1]:=A[0]-delta[]; A[2]:=A[0]; A[0]:=(A[1]+A[2])/(2);R[1]:=evalf(R(A[1]));S[1]:=evalf(S(R[1]));R[0]:=evalf(R(A[0]));S[0]:=evalf(S(A[0],R[0])); if abs(A[1]-A[2])<=0.00001 then printf("%f,%f",R[1],S[1]); else if (SS-S[1])*(SS-S[0])<0 then A[2]:=A[0]; else A[1]:=A[0]; end if; end if; end if; end do; end proc:
急!!!多谢!!!!

anbcjys 2011-02-24 08:27

回复: 求助迭代法程序修改
 
什么语言的?什么问题

gcwu 2012-01-20 16:13

回复: 求助迭代法程序修改
 
Maple程序 循环


所有时间均为北京时间。现在的时间是 19:46

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.