1

.功能

本程序采用牛顿法,求实系数高次代数方程

f(x)=a0xn+a1xn-1+

…+an-1x+an=

0 (an

≠0

)

(

1

)

的在初始值

x

0

附近的一个根。

2.

使用说明

(1)函数语句

Y=NEWTON_1(A,N,X0,NN,EPS1)

调用

M

文件

newton_1.m

(

2

)参数说明

A    n+1

元素的一维实数组,输入参数,按升幂存放方程系数。

N

整变量,输入参数,方程阶数。

X0

实变量,输入参数,初始迭代值。

NN

整变量,输入参数,允许的最大迭代次数。

EPS1

实变量,输入参数,控制根的精度。

3

.方法简介

解非线性议程

f(x)=0

的牛顿法是把非线性方程线性化的一种近似方法。把

f(x)

x0

附近展开成泰勒级数

f(x)=f(x0)+(x-x0)fˊ(x0)+(x-x0)2 +…

取其线性部分,作为非线性方程

f(x)=0

的近似方程,则有

f(x0)+fˊ(x0)(x-x0)=0

f

ˊ

(x0)

≠0则其解为

x1=x0-f(x0)/fˊ(x0)

再把f(x)在x1附近展开成泰勒级数,也取其线性部分作f(x)=0的近似方程。若f(x1)≠0,则得

x2=x1-f(x1)/fˊ(x1)

这样,得到牛顿法的一个迭代序列

xn+1=xn-f(xn)/fˊ(xn)

4

.newton_1.m程序

function y=ne

wton_1(a,n,x0,nn,eps1)

x(1)=x0;

b=1;

i=1;

while(abs(b)>eps1*x(i))

i=i+1;

x(i)=x(i-1)-n_f(a,n,x(i-1))/n_df(a,n,x(i-1));

b=x(i)-x(i-1);

if(i>nn)error(ˊnn is fullˊ);

return;

end

end

y=x(i);

i

程序中调用的n_f.m和n_df.m文件如下:

function y=n_df(a,n,x)%方程一阶导数的函数

y=0.0;

for i=1:n

y=y+a(i)*(n+1-i)*x^(n-i);

end

function y=n_df(a,n,x)

y=0.0;

for i=1:n

y=y+a(i)*(n+1-i)*x?(n-i);

end

5

.程序附注

(1)程序中调用n_f.m和n_df.m文件。n_f.m是待求根的实数代数方程的函数,n_df.m是方程一阶导数的函数。由使用者自己编写。

(2)牛顿迭代法的收敛速度:如果

f(x)

在零点附近存在连续的二阶微商,ξ是

f(x)

的一个重零点,且初始值x0充分接近于ξ,那么牛顿迭代是收敛的,其收敛速度是二阶的,即平方收敛速度。

6

.例题

用牛顿法求下面方程的根

f(x)=x3+2×2+10x-20

7

.运行结果

>>a=[1,2,10,-20] ;

>>n=3;

>>x0=1;

>>nn=1000;

>>eps1=1e-8;

>>y=newton_1(a,n,x0,nn,eps1)

y=

1.368808107821373e+000

i=

6

matlab牛顿解方程,牛顿迭代法解非线性方程matlab实现相关推荐

  1. 牛顿(Newton)迭代法求解非线性方程以及方程组的Matlab实现

    必做题目比较简单,写得有些随意,主要还是第二个拓展题目的难度比较高 1.Newton迭代法解非线性方程 function [] = Newton_Die(x,tol,N) f=cos(x)-x; %f ...

  2. matlab迭代求解,[基于matlab平台的三种迭代法求解矩阵方程]matlab迭代法求方程的根...

     数值分析第二次作业 学院:电子工程学院 基于matlab平台的三种迭代法求解矩阵方程组 求解系数矩阵由16阶Hilbert方程组构成的线性方程组的解,其中右端项为[2877/851,3491/14 ...

  3. python解方程代码_Python解方程的技巧介绍(代码示例)

    本篇文章给大家带来的内容是关于Python解方程的技巧介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. numpy numpy 用来解方程的话有点复杂,需要用到矩阵的思 ...

  4. 解题思考F. 解方程(二分法解方程)

    题目描述 Problem Description 给定方程 8x^4 + 7x^3 + 2x^2 + 3x + 6 == Y,请计算x在[0,100]范围内的解. Input 输入数据首先是一个正整数 ...

  5. matlab振动方程,数理方程关于振动方程的分析matlab.doc

    数理方程关于振动方程的分析matlab.doc 1数理方程基于MATLAB的问题分析报告一.问题的提出.背景.意义振动是指物体经过它的平衡位置所作的往复运动或某一物理量在其平衡值附近的来回变动.而波动 ...

  6. Matlab解方程, 等到数字解和解析式解

    使用solve可以解方程组, 数值简单的方程会给出数值解, 但是很多情况下只会给出解析式解. 比如以下代码: a=0.0715; d=0.3; b_square=0.0887;A1=0.4452; B ...

  7. c语言gs迭代法解方程,ex1_7-GS迭代法例题源程序及注释.pdf

    !example1_7 !注释 PROGRAM MAIN !主程序 DIMENSION A(4,4), B(4), X(4) !四个波长,混合物由四个组分组成 DOUBLE PRECISION A, ...

  8. 99、插值法,函数逼近,曲线拟和,数值积分,数值微分,解线性方程组的直接方法,解线性方程组的迭代法,非线性方程求根,常微分方程的数值解法...

    转载于:https://www.cnblogs.com/weizhen/p/7747100.html

  9. 量子计算机运行速度解方程,量子计算机可解方程组

    量子计算机,可解线性方程组?这已不是神话.中科大6月8日发布消息,该校科学家日前在国际上首次成功实现用量子计算机求解线性方程组的实验. 实验由潘建伟院士领衔的量子光学和量子信息团队的陆朝阳.刘乃乐研究 ...

最新文章

  1. 使用pytest对django项目单元测试
  2. python 使用win32com 操作excel
  3. Apache Log4j2 远程代码执行 漏洞
  4. 预约 .NET Conf: Focus on F# 活动,赢得官方周边!
  5. PHP webshell
  6. html5 标准结构_IT兄弟连 HTML5教程 HTML文件的主体结构
  7. 做完项目,对css样式有新发现新感悟
  8. 「三分钟系列03」3分钟看懂什么是三次握手/四次挥手
  9. 重庆市计算机一级考试2015,2015年计算机一级考试试题及答案
  10. 时间协议ntp服务器,时间服务器NTP搭建及NTP协议简介
  11. 灵格斯Lingoes词典及浏览器插件实现屏幕取词等功能的配置使用方法
  12. 【前端开源模板推荐】
  13. AI顶级期刊 IEEE T-PAMI 2020最新论文解读 | Deep Partial Multi-View Learning
  14. 银河麒麟怎么卸载软件_常见问题·银河麒麟操作系统 麒麟操作系统 中标麒麟 麒麟软件官方网站...
  15. python大作业报告_python大作业含报告 相关实例(示例源码)下载 - 好例子网
  16. 前、后台网站模板参考
  17. 新西兰Working Holiday Visa(WHV)签证申请图文
  18. Cluster: FarthestFirst
  19. Android native开发严重问题总结
  20. 联想G50-70装机过程

热门文章

  1. UE4骨骼重定向(二)借助插件Mixamo Converter快速操作Mixamo网站资源
  2. 【英语】关于for的含义
  3. SRS4.0源码分析-SrsRecvThread::cycle
  4. 在选择人员定位系统是应该注意什么?
  5. 2020-09-24
  6. C# 从做早餐看同步异步
  7. 英语语法---宾语详解
  8. 夕颜:利用热点事件如何赚钱?
  9. Springboot 序列化空对象报错解决办法
  10. isosurface matlab,[matlab][isosurface]画隐函数的等值曲线或曲面