非线性方程的数值解法牛顿下山法matlab.docx

1 非线性方程的数值解法 ——计算物理实验作业九 陈万 物理学2013级 13020011006  题目: 用下列方法求 在 附近的根。根的准确值 0 1 3 3     x x f(x) 2 0  x ,要求计算结果精确到四位有效数字。  87938524 . 1 *  x (1)用牛顿法; (2)用弦截法,取 ; 9 . 1 , 2 1 0   x x  主程序: clear clc; %----------------初值设定------------------- x0 = 2; x1 = 1.9; eps = 0.00001; N = 50; %----------------迭代求解------------------- Newton(x0,eps,N); Newton_downhill(x0,eps,N);2 Secant_(x0,x1,eps,N);  子程序:f(x) function [y]=f(x) y = x^3-3*x-1; %函数f(x) End  程序一:牛顿法 function Newton(x0,eps,N) % 牛顿法 % x0 是迭代初值,eps 是精度,N 是迭代上限 at long; k = 1; while(1)ff = (f(x0+0.1*eps)-f(x0))/(0.1*eps);if ff == 0disp( 分母为零,请重新选择初始迭代值 )break;elsex1=x0-f(x0)/ff ;if abs(x1-x0)=Ndisp( 迭代失败,请检查程序是否有误 )breakelse k = k+1;x0 = x1; endend end  程序二:弦截法 function Secant_(x0,x1,eps,N) % 弦截法 % x0,x1 是迭代初值,eps 是精度,N 是迭代上限 at long; k = 1; while(1)if f(x0)==0disp( 满足精度要求的解是: )disp(x0)break;elseif f(x1)==04disp( 满足精度要求的解是: )disp(x1)break;elseif abs(f(x1)-f(x0))==0disp( 分母为零,请重新选择初始迭代值 )break;elsex2 = x1-f(x1)*(x1-x0)/(f(x1)-f(x0));if abs(x2-x1)=Ndisp( 迭代失败,请检查程序是否有误 )break;elsek = k+1;x0 = x1;x1 = x2;endend end  程序三:牛顿下山法5 function Newton_downhill(x0,eps,N) % 牛顿下山法 % x0 是迭代初值,eps 是精度,N 是迭代上限 at long; k = 1; while(1)lamda = 1;ff = (f(x0+0.1*eps)-f(x0))/(0.1*eps);if ff == 0disp( 分母为零,请重新选择初始迭代值 )break;elsewhile(1)x1 = x0-lamda*f(x0)/ff ;if f(x1)>=f(x0)lamda = 0.5*lamda;elsebreak;endendif abs(x1-x0)=Ndisp( 迭代失败,请检查程序是否有误 )breakelse k = k+1;x0 = x1; endend end end  程序运行结果: 牛顿法: 满足精度要求的根是:1.879385241571819 弦截法: 满足精度要求的解是:1.879385241572444  分析讨论: 从运行结果来看,牛顿法与弦截法的结果与给定准确值完全相等;从运行 时间上看速度都相当快。

matlab中牛顿下山法实例,非线性方程的数值解法牛顿下山法matlab.docx相关推荐

  1. matlab中牛顿下山法实例,非线性方程的数值解法牛顿下山法matlab

    非线性方程的数值解法牛顿下山法matlab 1 非线性方程的数值解法 --计算物理实验作业九 陈万 物理学2013级 130******** ● 题目: 用下列方法求0133=--=x x f(x)在 ...

  2. matlab求xk符号解,Matlab学习手抄(6)——非线性方程的数值解法

    1. 二分法 定理: 函数f(x)在区间[a,b]上连续,如果f(a)*f(b)<0,则f(x)=0在[a,b]内至少有一个实根x'. [a,b]对半平分为两个小区间,判断f改变正负号的子区间, ...

  3. 非线性方程的数值解法:正割法 python

    import sympy from sympy import exp #用来输入指数函数,详见输入案例 x=sympy.symbols("x") yuan=input(" ...

  4. matlab中有趣的图像,MATLAB中有趣的演示实例

    MATLAB中有趣的演示实例 MATLAB中也同样有许多有意思的实例,为提高读者对MATLAB和Simulink的兴趣,特举部分以供参考.具体如下,运行的时候只要将":"前面的代码 ...

  5. matlab 对话框保持,如何在matlab中创建输入对话框?(How to create Input dialog box in matlab?)...

    如何在matlab中创建输入对话框?(How to create Input dialog box in matlab?) 我想在matlab中创建输入对话框. 我在MATLAB中执行简单的加法运算. ...

  6. matlab矩阵按坐标取,在Matlab中获取inlier点的坐标(Get coordinates of inlier points in Matlab)...

    在Matlab中获取inlier点的坐标(Get coordinates of inlier points in Matlab) 我需要找到使用impixel()在对象检测中获得的内部点的像素值. 我 ...

  7. 非线性方程的数值解法:牛顿法及牛顿下山法(含Matlab程序)

    牛顿法及牛顿下山法 简介:牛顿迭代法是求解单变量非线性方程f(x)=0中最实用的方法,该方法在单根附近二阶收敛.但应用时要选用较好的初值x0近似才能保证迭代收敛.为克服这一缺点,可使用牛顿下山法.下面 ...

  8. matlab 牛顿法 初值,非线性方程的数值解法:牛顿法及牛顿下山法(含Matlab程序)...

    牛顿法及牛顿下山法 简介:牛顿迭代法是求解单变量非线性方程f(x)=0中最实用的方法,该方法在单根附近二阶收敛.但应用时要选用较好的初值x0近似才能保证迭代收敛.为克服这一缺点,可使用牛顿下山法.下面 ...

  9. LM(Levenberg-Marquadrdt )算法在MATLAB中的实现及实例

    LM算法简介 考虑如下非线性最小二乘问题 min ⁡ f ( x ) = 1 2 ∥ r ( x ) ∥ 2 , \min \quad f(x) = \frac{1}{2}\Vert r(x)\Ver ...

最新文章

  1. C++:vector容器中使用pair该如何访问成员
  2. c语言变量及输入输出
  3. 乐变黄杲:当前如何选择App热更新服务
  4. 第三章 python webdriver API(一)——浏览器操作
  5. ParlAI:Facebook开源的一个AI对话框架
  6. Python网络编程2:创建套接字和套接字对象的内建方法
  7. 手机 服务器 推送消息推送消息,推送信息到手机的pushover使用方法及sample code
  8. [html] 你认为一个好的布局应该是什么样的?有哪些需要注意的地方?
  9. java注解:@Deprecated(不建议使用的,废弃的);@SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的)
  10. C++类的构造函数、析构函数与赋值函数
  11. AcWing 1952. 金发姑娘和 N 头牛(离散化+差分)
  12. 开方根运算——没有FPU的解决办法
  13. 运筹学 matlab实现单纯形法
  14. 释放IP地址,然后重新获取的两个命令
  15. win7工作组计算机无法连接打印机,win7无法访问共享打印机怎么解决
  16. win7系统如何添加打印机服务器,怎样如何添加打印机驱动步骤
  17. 初探 sort 方法和 sorted 内置函数
  18. 学计算机英语的心得体会,英语学习心得体会
  19. 计算机房消防灭火系统,机房气体消防灭火系统方案.docx
  20. 数据管理系统之数据模型

热门文章

  1. 基于LiDAR里程计和先验地图的定位方法
  2. 如何在webots中绘制运动轨迹
  3. python爬虫是数据挖掘吗_爬虫属于数据挖掘 python为什么叫爬虫
  4. matlab modis sst,MATLAB 处理 MODIS 数据(MOD04_L2)
  5. 量化交易中,如何快速把股票代码转换成Int整形?
  6. adi翻译_ADI是什么意思_ADI的翻译_音标_读音_用法_例句_爱词霸在线词典
  7. 统一告警平台设计方案
  8. 网上收集的一些程序员笑话
  9. 测试点设计及编写思路
  10. eclipse设置xml文件默认的打开方式为XML Editor