东南小忽悠 发表于 2011-5-16 09:05

求助:fsolve 解非线性方程组如何查看迭代过程

用以下程序解非线性方程组,如何查看解的迭代计算过程。
function x=myfun1
format long
x0 = ;
options=optimset('MaxFunEvals',80000,'MaxIter',85000);
= fsolve(@f,x0,options) ;
function F=f(x)
k=5000
ga=10322.87553
ei=178892900.6
p=60000
c=7000
h=173
ae=0
ea=0
a=0.0478
F =[k*x(2)-ea*(((h-ae-x(2))^2+(x(1))^2)^0.5-h)*abs(cos(x(3)))/h;
(abs(x(1))-(h-ae-x(2))*abs(tan(x(3))))*100;
x(4)*(1-cos(a*h)-c*h)/p+(p*(c-k*x(2)*abs(tan(x(3))))+ga*c)*sin(a*h)/(ga*a*p)-abs(x(1));
x(4)-c*h-p*abs(x(1))]
end

end

meiyongyuandeze 发表于 2011-5-16 09:10

你可以在function函数中,添加一些查看变量来观察,个人拙见!

东南小忽悠 发表于 2011-5-16 09:36

回复 2 # meiyongyuandeze 的帖子

谢谢,只是不懂怎么添加,我想看的是每一步迭代的结果

ChaChing 发表于 2011-5-18 00:02

optimset('Display','iter')??
页: [1]
查看完整版本: 求助:fsolve 解非线性方程组如何查看迭代过程