学习笔记-Newton-Raphson法求解多元非线性方程组及matlab案例代码

牛顿迭代法可以推广到多元非线性方程组F(x)=0的情况,称为牛顿–拉夫逊方法 (Newton-Raphson method). 当 F(x)关于x的 Jacobi 矩阵 J(x)=(∂F/∂x)可逆时, 有:
学习笔记-Newton-Raphson法求解多元非线性方程组及matlab案例代码_第1张图片
求解案例:
1、多元非线性方程组
学习笔记-Newton-Raphson法求解多元非线性方程组及matlab案例代码_第2张图片
2、转换方程组F(x)=0
学习笔记-Newton-Raphson法求解多元非线性方程组及matlab案例代码_第3张图片
3、求Jacobi 矩阵 J(x)
学习笔记-Newton-Raphson法求解多元非线性方程组及matlab案例代码_第4张图片

4、取初始值
在这里插入图片描述
5、进行迭代计算
在这里插入图片描述
6、matlab程序代码

clear
clc
% 构造函数
F=@(x)[2*x(1)+3*x(2)^2+3;
       x(1)^2+5*x(1)*x(2)-6];
% Jacobi矩阵
J=@(x)[2 6*x(2);
       2*x(1)+5*x(2) 5*x(1)];
% 初始值
x0=[1;1];
% 迭代计算
for ci = 1:100
    x1=x0-J(x0)^(-1)*F(x0);
    if sum(abs(x1-x0))<1e-6
        x=x1;
        break
    end
    x0=x1;
end
disp(['迭代了:',num2str(ci),'次'])
x

你可能感兴趣的:(Matlab,笔记)