必做题目比较简单,写得有些随意,主要还是第二个拓展题目的难度比较高

1.Newton迭代法解非线性方程

function [] = Newton_Die(x,tol,N)
f=cos(x)-x; %f(x)
df=-sin(x)-1; %f(x)的导数
for k=1:Nx_old=x;x=x_old-f/df;f=cos(x)-x;   %更新f的值df=-sin(x)-1; %更新df的值fprintf('迭代次数=%d\tx=%.10f\n',k,x)if abs(x_old-x)<tolbreakendif k==Ndisp('达到最大迭代次数')end
end
end

2.Newton迭代法解非线性方程组

function [X] = Newton_Z(X,tol,N)
n = input('输入未知数的个数:');
syms x [1 n]  %创建n个未知数变量
ff=cell(n,1); %初始化f(xk)——带入Xk值之前为符号表达式——cell储存
F=zeros(n,1); %初始化f(xk)——带入Xk值之后为矩阵——数组储存
Jx=cell(n,n); %初始化J(xk)——带入Xk值之前为符号表达式——cell储存
J=zeros(n,n); %初始化J(xk)——带入Xk值之后为矩阵——数组储存
for i=1:nf=input('请输入方程:');ff{i,1}=f;for j=1:nJx{i,j}=diff(f,x(j)); %求Jacobi矩阵end
end
Jx
for k=1:N %定义最大迭代次数X_old = X;for i=1:nff_cpoy=ff{i,1};for u=1:n %求f(xk)的值if u~=nff_cpoy=subs(ff_cpoy,x(u),X(u,1)); %对符号表达式逐个赋值elseF(i,1)=vpa(subs(ff_cpoy,x(u),X(u,1)));%赋值完成后传给Fendendfor j=1:nJx_copy=Jx{i,j};for v=1:n %求J(xk)的值if v~=nJx_copy=subs(Jx_copy,x(v),X(v,1));%对符号表达式逐个赋值elseJ(i,j)=vpa(subs(Jx_copy,x(v),X(v,1)));%赋值完成后传给JendendendendX = X-J\F; %Newton迭代公式fprintf('迭代次数=%d  ',k)for i=1:nvalue=X(i,1);fprintf('x%d=%.8f ',i,value)endfprintf('\t')fprintf('精度:%.10f\n',norm(X_old-X, inf))if norm(X_old-X, inf)<tol %无穷范数定义终止条件breakendif k==Ndisp('达到最大迭代次数')end
end

传入题设数据有:

>> Newton_Die(0.5,1e-5,100)
迭代次数=1 x=0.7552224171
迭代次数=2 x=0.7391416661
迭代次数=3 x=0.7390851339
迭代次数=4 x=0.7390851332
Newton_Z([1;1;1],1e-5,100)
输入未知数的个数:3
请输入方程:3*x1-cos(x2*x3)-0.5
请输入方程:x1^2-81*(x2+0.1)^2+sin(x3)+1.06
请输入方程:exp(-1*x1*x2)+20*x3+(10*pi-3)/3Jx =3×3 cell 数组{[3              ]}    {[x3*sin(x2*x3)  ]}    {[x2*sin(x2*x3)]}{[2*x1           ]}    {[- 162*x2 - 81/5]}    {[cos(x3)      ]}{[-x2*exp(-x1*x2)]}    {[-x1*exp(-x1*x2)]}    {[20           ]}迭代次数=1  x1=0.91968721 x2=0.46082246 x3=-0.50338764   精度:1.5033876355
迭代次数=2  x1=0.50100049 x2=0.18743348 x3=-0.52086923  精度:0.4186867278
迭代次数=3  x1=0.50054294 x2=0.06115345 x3=-0.52200096  精度:0.1262800240
迭代次数=4  x1=0.50010444 x2=0.01161711 x3=-0.52329515  精度:0.0495363479
迭代次数=5  x1=0.50000551 x2=0.00060562 x3=-0.52358294  精度:0.0110114900
迭代次数=6  x1=0.50000002 x2=0.00000183 x3=-0.52359873  精度:0.0006037894
迭代次数=7  x1=0.50000000 x2=0.00000000 x3=-0.52359878  精度:0.0000018264

另附运行截图

牛顿(Newton)迭代法求解非线性方程以及方程组的Matlab实现相关推荐

  1. 求解非线性方程组的牛顿法c语言,牛顿下山法求解非线性方程(组)(C实现)...

    1.算法描述 (1)符号说明与基本假设 对于非线性方程组:                                                        (1) 引入向量: 可将(1) ...

  2. 牛顿下山法求解非线性方程(组)(C实现)

    1.算法描述 (1)符号说明与基本假设 对于非线性方程组:                                                        (1) 引入向量: 可将(1) ...

  3. python迭代法求解非线性方程_荐【数学知识】非线性方程求解的二分法以及牛顿迭代法...

    [数学知识]非线性方程求解的二分法以及牛顿迭代法 本博客不谈及理论推导,只提供代码实现,关于理论推导,大家可以查看其它博客文章. 导入包 import sys import math import s ...

  4. 简单迭代法、牛顿法、弦割法、布洛依登法求解方程或方程组【Matlab】

    利用迭代法求解定非线性方程及方程组,使得误差不超过10^(-8).同时应用迭代加速技术,提交迭代运算效率. 此题需要用到的MATLAB代码及附录: 附录6 二分法作根的隔离 % 附录6 二分法作根的隔 ...

  5. matlab 一元方程程序,用牛顿方法解一元非线性方程的根(Matlab实现)

    题目:用牛顿法求方程x-cos(x)=0的实根(精确到1E-6). (1)要求用函数调用. (2)进一步研究和弦截法作比较. 算法分析: (1)       此题是利用牛顿方法解一元非线性方程的根.( ...

  6. 数值分析第一次作业-牛顿迭代法求解二元非线性方程组

    1.问题 求解如下方程组: 2.算法 3.代码实现 # *coding:utf-8 * import math delta = 5e-6 ;eps = 1e-6 x0 = 1;y0 = 1 er = ...

  7. Newton迭代法求解Toeplitz矩阵逆的程序

    说明: 迭代法的收敛性和矩阵的条件数相关,条件数大于1K肯定不收敛,小于100肯定收敛 100--1000则要适当选择截断的小量,采用迭代法的另一种多参数调用方式 程序清单: %%%%%%%%%%%% ...

  8. matlab怎么求解多元非线性方程组,利用MATLAB如何求解如下非线性方程组,

    matlab会认为所有未指定为待求变量的字符比如a.b.v.w等为符号参数,比如在你的式子 [t1,t4]=solve('a*cos(w*t1)-a*cos(w*t4)+(t4-t1)*v=2*pi* ...

  9. python牛顿法解非线性方程组_萌新请教牛顿法求解三元非线性方程组

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 请问牛顿迭代法求解三元非线性方程组,不同迭代初值貌似有很多不同结果,如何求解到满足要求的解,0 FindRoot[{-6.565159793181527` ...

最新文章

  1. USB 3G驱动和USB HOST驱动加载
  2. shiro学习(3):用户权限
  3. 【平台兼容性】jeecg部署weblogic 测试,修改配置方法
  4. 微信找不到nfc功能_手机的NFC如何使用?3分钟教会你!
  5. python3操作excel(xls与xlsx版本的爱恨情仇)
  6. 数据结构笔记(二十三)--哈夫曼树
  7. ETL增量单表同步简述_根据dateTime增量
  8. 【转】Jenkins 构建触发器操作详解
  9. 怎么禁止使用计算机的软件,电脑如何禁止程序运行 一键彻底禁止电脑软件运行方法...
  10. 阿里巴巴是怎么处理大数据的?重磅揭秘!
  11. php mysql webim_webim(icomet) 使用
  12. 最新章节 第138章 量子生物计算机,生生不息的世界
  13. 利用$randon和seed可以在测试脚本里面产生测试所需的赋值
  14. Cryptohack-Backpack Cryptography
  15. OpenStreetMap在线地图数据下载(全)
  16. CSS基础(样式声明、引用(行内样式、内部样式、外部样式、导入样式)、样式优先级)
  17. java计算机毕业设计宠物领养管理系统源码+数据库+系统+lw文档+部署
  18. 伊丽莎白一世 读后感
  19. jquery个性滚动条插件jquery.mCustomScrollbar.js的使用
  20. andorid studio 设置

热门文章

  1. onBlur和onfocus事件
  2. Python提取PDF表格及文本!(附源码)
  3. 学会使用这五大电阻!
  4. 办理北京市户口的流程
  5. my ReadCompany / company / brand
  6. 大数据:变革世界的关键资源
  7. 第十一届“泰迪杯”挑战赛作品提交仅剩2天了!!!
  8. ssh-keygen生成密钥对
  9. 优思学院|一文看懂散布图(六西格玛统计工具)的原理和使用场景
  10. 程序员装逼指南(2022年版本)