newtoniterate.m

来自「基于Matlab的计算方法中常用的算法程序」· M 代码 · 共 22 行

M
22
字号
function s=NewtonIterate(x,eps)
  % Newton迭代法求非线性方程组
  % x为迭代初值,eps为允许误差值
  if nargin==1
      eps=1.0e-6;
  elseif nargin<1
      error
      return
  end
  x1=fx1(x); %非线性方程组
  x2=-dfx1(x); %非线性方程组导数
  x3=inv(x2);
  x0=x3*x1';
  while norm(x0)>=eps %循环迭代
      x=x0'+x;
      x1=fx1(x);
      x2=-dfx1(x);
      x3=inv(x2);
      x0=x3*x1';
  end
  s=x0'+x;
  return

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?