wlinwlin 发表于 2008-5-8 15:42

为何用牛顿迭代法对非线性方程组求解时总是出错

我在做东西时,需要用到牛顿迭代法对非线性方程组求解,可是我的程序总是出错的,请高手帮我修改一下啊,下面附上我写的程序啊,谢谢啊
function =mulNewton3(F,x0,eps)
if nargin==1
    eps=1.0e-4;
end
J=jacobian(sym(F));
fa=subs(sym(F),x0);
fb=subs(sym(J),x0);
r=x0-fa/fb;
n=1;
tol=1;
while tol>eps
    x0=r;
    r=x0-fa/fb;
    tol=norm(r-x0);
    n=n+1;
    if(n>100000)
      disp('******');
      return;
    end
end

[ 本帖最后由 eight 于 2008-5-8 22:16 编辑 ]

sigma665 发表于 2008-5-8 18:14

回复 楼主 的帖子

另外请附上你的错误提示

eight 发表于 2008-5-8 22:17

原帖由 wlinwlin 于 2008-5-8 15:42 发表 http://www.chinavib.com/forum/images/common/back.gif
我在做东西时,需要用到牛顿迭代法对非线性方程组求解,可是我的程序总是出错的,请高手帮我修改一下啊,下面附上我写的程序啊,谢谢啊
function =mulNewton3(F,x0,eps)
if nargin==1
    eps=1.0e-4;
end
J= ... 新人发帖前请先阅读置顶的会员守则,警告一次。养成一个习惯:无论上哪个论坛,先看置顶帖

ME! 发表于 2012-11-15 22:26

怎么看啊

happy 发表于 2012-11-28 15:49

最好附上主程序
让程序能够运行
这样大家方便找问题
否者光看代码费事费力
很难找出问题所在
页: [1]
查看完整版本: 为何用牛顿迭代法对非线性方程组求解时总是出错