chap3 非线性方程的求解

chap3 非线性方程的求解
chap3 非线性方程的求解

Chap3 非线性方程求解的相关考题

一、判断题

1.(2008)(2011)若()()0f a f b <,则方程()0f x =在区间(,)a b 内至少有一个根

( )

2.(2009)设*x 是方程0)(=x f 的根,则求*x 的Newton 迭代法至少是平方收敛的。 ( )

3.(2013)设A 是n 阶非奇异方阵,则解方程组A =x b 的迭代法收敛的充要条件是A 的谱半径()1A ρ<。 ( )

4.(2016)设*x 是函数()x ?的不动点,且()1x ?'<,则由迭代格式1()

k k x x ?-=(1,2,)k =L 产生的序列{}k x 收敛到*

x 。 ( )

二、填空题

1.(2008)(2010A )(2010B )设*x 是方程0)(=x f 的3重实根,则改进的Newton 迭代公式是 .

2.(2012)设*3x =是方程327159x x x -+=的2重实根,则求*x 的改进的Newton 迭代公式为 . 三、解答题

1、(2008)(本题满分14分) 已知方程3210x x --=在区间]2,1[内有一个实根

*x .

(1)建立一个收敛的迭代公式求*x (不要用Newton 迭代法),并证明其收敛性。(4分)

(2)取初值0 1.4x =,用Newton 迭代法求*x (只迭代两次)。(5分) (3)取初值011.4, 1.5x x ==,用弦截法求*x (只迭代两次)。(5分)

2、(2009)(2010A )(2010B )(2012)(本题满分10分) 已知方程10x xe -=在

00.5x =附近有一个实根*x .

(1)取初值00.5x =,用Newton 迭代法求*x (只迭代两次)。 (2)取初值010.5,0.6x x ==,用弦截法求*x (只迭代两次)。

3、(2010A )(2010B )(本题满分10分) 设迭代矩阵M 的某种范数1M q =<,

证明迭代公式

(1)()0,1,2,k k M ,k =+=+L x x d

对任意初值(0)x 都收敛到线性方程组M =+x x d 的解*x ,且有估计式

*()()(1)1k k k q

q

--≤

--x x x x , 其中n n M ?∈R ,*(),,,0,1,2,k n ,k =∈R L x x x d .

4、(2011)(本题满分12分). 设*x 是方程()0f x =的单根,()f x 是可导函数。

(1)证明求*x 的Newton 迭代法至少是平方收敛的。(6分)

(2)若()1x f x xe =-,取初值010.5,0.6x x ==,用弦截法求*x (只迭代两次)。(6分)

5、(2012)(2014)(本题满分12分) 设函数()x ?在[,]a b 上具有一阶连续导数,且满足;

(1) 当[,]x a b ∈时,()a x b ?≤≤;

(2) 存在常数01L <<, 对[,]x a b ?∈,都有()x L ?'≤; 证明

(1) 函数()x ?在区间[,]a b 上存在唯一不动点*x ;(4分)

(2) 对任何初值0[,]x a b ∈,由迭代格式1()k k x x ?-=生成的序列{}k x 都收敛于*x ;(4分) (3) *1||||1k k k L

x x x x L

--≤--.(4分)

6、(2013)(2015)(本题满分12分) (1)设2[,]f C a b ∈,*x 是方程()0f x =的单根。写出求*x 的Newton 迭代格式;并证明求*x 的Newton 迭代法至少是平方收敛的。

(2)取初值011.5, 1.6x x ==,用弦截法求方程3210x x --=在0 1.5x =附近的实根*x .(只迭代两次)。

7、(2014)(本题满分10分) (1)用改进的Newton 迭代法求方程

432330x x x x -+-=的重根,取初值02x =,求21,x x .(要求先验证重根的重数。)(5分)

(2)用弦截法求上述方程的单根,取初值010.5,0.4x x ==,求32,x x . (5分)

8、(2016)(本题满分10分) 已知*

x =

42

440x x -+=的2重根,分别

用Newton 迭代法和改进的Newton 迭代法求*

x 的近似值21,x x ,取初值0 1.5x =. 比较计算结果,指出所得结果说明了什么?

9、(2017)(本题满分10分) (1)用Newton 迭代法求方程2

(1)10x x +-=在0.4附近的实根*

x 的近似值3x (取初值00.4x =)。

(2)用弦截法求方程2

(1)10x x +-=在0.4附近的实根*

x 的近似值3x (取初值

010.40.45,x x ==)。

10、(2017)若迭代函数()x ?在有限区[,]a b 上满足下列两个条件:

(i) 对任意的[,]x a b ∈,有()[,]x a b ?∈;

(ii) ()x ?'在[,]a b 上存在,且()0,|()|1x x L ??''≠≤<,

证明:对任意初值0[,]x a b ∈,由迭代格式1()(1,2,)k k x x k ?-==L 产生的序列{}k x 收敛到方程()x x ?=的根*x .

非线性方程组的求解(汇编)

非线性方程组的求解 摘要:非线性方程组求解是数学教学中,数值分析课程的一个重要组成部分,作为一门学科,其研究对象是非线性方程组。求解非线性方程组主要有两种方法:一种是传统的数学方法,如牛顿法、梯度法、共轭方向法、混沌法、BFGS 法、单纯形法等。传统数值方法的优点是计算精度高,缺点是对初始迭代值具有敏感性,同时传统数值方法还会遇到计算函数的导数和矩阵求逆的问题,对于某些导数不存在或是导数难求的方程,传统数值方法具有一定局限性。另一种方法是进化算法,如遗传算法、粒子群算法、人工鱼群算法、差分进化算法等。进化算法的优点是对函数本身没有要求,不需求导,计算速度快,但是精度不高。 关键字:非线性方程组、牛顿法、BFGS 法、记忆梯度法、Memetic 算法 1: 三种牛顿法:Newton 法、简化Newton 法、修改的Newton 法【1-3】 求解非线性方程组的Newton 法是一个最基本而且十分重要的方法, 目前使用的很多有效的迭代法都是以Newton 法为基础, 或由它派生而来。 n 个变量n 个方程的非线性方程组, 其一般形式如下: ???????===0),...,(... 0),...,(0),...,(21212211n n n n x x x f x x x f x x x f (1) 式(1)中,),...,(21n i x x x f ( i=1, ?, n) 是定义在n 维Euclid 空间Rn 中开域 D 上 的实值函数。若用向量记号,令: ????????????=n x x x ...X 21,????????????=??????????????====)(...)()(0),...,(...0),..,(0)...,()(2121212,211X f X f X f x x x f x x x f x x x f X F n n n n n

Matlab求解线性方程组非线性方程组

求解线性方程组 solve,linsolve 例: A=[5 0 4 2;1 -1 2 1;4 1 2 0;1 1 1 1]; %矩阵的行之间用分号隔开,元素之间用逗号或空格 B=[3;1;1;0] X=zeros(4,1);%建立一个4元列向量 X=linsolve(A,B) diff(fun,var,n):对表达式fun中的变量var求n阶导数。 例如:F=sym('u(x,y)*v(x,y)'); %sym()用来定义一个符号表达式 diff(F); %matlab区分大小写 pretty(ans) %pretty():用习惯书写方式显示变量;ans是答案表达式 非线性方程求解 fsolve(fun,x0,options) 为待解方程或方程组的文件名;fun其中 x0位求解方程的初始向量或矩阵; option为设置命令参数 建立文件fun.m: function y=fun(x) y=[x(1)-0.5*sin(x(1))-0.3*cos(x(2)), ... x(2) - 0.5*cos(x(1))+0.3*sin(x(2))]; >>clear;x0=[0.1,0.1];fsolve(@fun,x0,optimset('fsolve')) 注: ...为续行符 m文件必须以function为文件头,调用符为@;文件名必须与定义的函数名相同;fsolve()主要求解复杂非线性方程和方程组,求解过程是一个逼近过程。Matlab求解线性方程组 AX=B或XA=B 在MATLAB中,求解线性方程组时,主要采用前面章节介绍的除法运算符“/”和“\”。如: X=A\B表示求矩阵方程AX=B的解; 的解。XA=B表示矩阵方程B/A=X. 对方程组X=A\B,要求A和B用相同的行数,X和B有相同的列数,它的行数等于矩阵A的列数,方程X=B/A同理。 如果矩阵A不是方阵,其维数是m×n,则有: m=n 恰定方程,求解精确解; m>n 超定方程,寻求最小二乘解; m

非线性方程的解法

20世纪60年代中期以后,发展了两种求解非线性方程组(1)的新方法。一种称为区间迭代法或称区间牛顿法,它用区间变量代替点变量进行区间迭代,每迭代一步都可判断在所给区间解的存在惟一性或者是无解。这是区间迭代法的主要优点,其缺点是计算量大。另一种方法称为不动点算法或称单纯形法,它对求解域进行单纯形剖分,对剖分的顶点给一种恰当标号,并用一种有规则的搜索方法找到全标号单纯形,从而得到方程(1)的近似解。这种方法优点是,不要求f(□)的导数存在,也不用求逆,且具有大范围收敛性,缺点是计算量大 编辑摘要 目录 ? 1 正文 ? 2 牛顿法及其变形 ? 3 割线法 ? 4 布朗方法 ? 5 拟牛顿法 ? n个变量n个方程(n >1)的方程组表示为 (1) 式中?i(x1,x2,…,x n)是定义在n维欧氏空间R n的开域D上的实函数。若?i中至少有一个非 线性函数,则称(1)为非线性方程组。在R n中记?= 则(1)简写为?(尣)=0。若存在尣*∈D,使?(尣*)=0,则称尣*为非线性方程组的解。方程组(1)可能有一个解或多个解,也可能有无穷多解或无解。对非线性方程组解的存在性的研究远不如线性方程组那样成熟,现有的解法也不象线性方程组那样有效。除极特殊的方程外,一般不能用直接方法求得精确解,目前主要采用迭代法求近似解。根据不同思想构造收敛于解尣*的迭代序列{尣k}(k=0,1,…),即可得到求解非线性方程组的各种迭代法,其中最著名的是牛顿法。 牛顿法基本思想是将非线性问题逐步线性化而形成如下迭代程序:

(2) 式中 是?(尣k)的雅可比矩阵,尣0是方程(1)的解尣*的初始近似。 这个程序至少具有2阶收敛速度。由尣k算到尣k+的步骤为:①由尣k算出?(尣k)及 ;②用直接法求线性方程组的解Δ尣k;③求 。 由此看到迭代一次需计算n个分量函数值和n2个分量偏导数值,并求解一次n阶线性方程组。 为了评价非线性方程组不同迭代法的优劣,通常用效率作为衡量标准,其中P为迭 代法的收敛阶,W为每迭代步计算函数值?i及偏导数值的总个数(每迭代步中求一次逆的工作量相同,均不算在W 内)。效率e越大表示此迭代法花费代价越小,根据效率定义, 牛顿法(2)的效率为。 牛顿法有很多变形,如当奇异或严重病态时,可引进阻尼因子λk,得到阻尼牛顿法,即

非线性方程组数值解法

非线性方程组数值解法 n个变量n个方程(n >1)的方程组表示为 (1) 式中?i(x1,x2,…,x n)是定义在n维欧氏空间R n的开域D上的实函数。若?i中至少有一个非 线性函数,则称(1)为非线性方程组。在R n中记?= 则(1)简写为?(尣)=0。若存在尣*∈D,使?(尣*)=0,则称尣*为非线性方程组的解。方程组(1)可能有一个解或多个解,也可能有无穷多解或无解。对非线性方程组解的存在性的研究远不如线性方程组那样成熟,现有的解法也不象线性方程组那样有效。除极特殊的方程外,一般不能用直接方法求得精确解,目前主要采用迭代法求近似解。根据不同思想构造收敛于解尣*的迭代序列{尣k}(k=0,1,…),即可得到求解非线性方程组的各种迭代法,其中最著名的是牛顿法。 牛顿法及其变形牛顿法基本思想是将非线性问题逐步线性化而形成如下迭代程序: (2) 式中

是?(尣k)的雅可比矩阵,尣0是方程(1)的解尣*的初始近似。 这个程序至少具有2阶收敛速度。由尣k算到尣k+的步骤为:①由尣k算出?(尣k)及 ;②用直接法求线性方程组的解Δ尣k;③求 。 由此看到迭代一次需计算n个分量函数值和n2个分量偏导数值,并求解一次n阶线性方程组。 为了评价非线性方程组不同迭代法的优劣,通常用效率作为衡量标准,其中P 为迭代法的收敛阶,W为每迭代步计算函数值?i及偏导数值的总个数(每迭代步中求一次逆的工作量相同,均不算在W内)。效率e越大表示此迭代法花费代价越小,根据效率定 义,牛顿法(2)的效率为。 牛顿法有很多变形,如当奇异或严重病态时,可引进阻尼因子λk,得到阻尼牛顿法,即

Maab求解线性方程组非线性方程组

M a a b求解线性方程组非 线性方程组 The latest revision on November 22, 2020

求解线性方程组solve,linsolve例:A=[5 0 4 2;1 -1 2 1;4 1 2 0;1 1 1 1];%矩阵的行之间用分号隔开,元素之间用逗号或空格B=[3;1;1;0]X=zeros(4,1);%建立一个4元列向量 X=linsolve(A,B)diff(fun,var,n):对表达式fun中的变量var求n阶导数。 例如:F=sym('u(x,y)*v(x,y)'); %sym()用来定义一个符号表达式diff(F); %matlab区分大小写pretty(ans) %pretty():用习惯书写方式显示变量;ans是答案表达式 非线性方程求解 fsolve(fun,x0,options) 其中fun为待解方程或方程组的文件名; x0位求解方程的初始向量或矩阵; option为设置命令参数 建立文件: function y=fun(x) y=[x(1)*sin(x(1))*cos(x(2)), ... x(2) - *cos(x(1))+*sin(x(2))]; >>clear;x0=[,];fsolve(@fun,x0,optimset('fsolve'))注:...为续行符m文件必须以function 为文件头,调用符为@;文件名必须与定义的函数名相同;fsolve()主要求解复杂非线性方程和方程组,求解过程是一个逼近过程。 Matlab求解线性方程组AX=B或XA=B在MATLAB中,求解线性方程组时,主要采用前面章节介绍的除法运算符“/”和“\”。如:X=A\B表示求矩阵方程AX=B的解;X=B/A表示矩阵方程XA=B 的解。对方程组X=A\B,要求A和B用相同的行数,X和B有相同的列数,它的行数等于矩阵A 的列数,方程X=B/A同理。 如果矩阵A不是方阵,其维数是m×n,则有:m=n 恰定方程,求解精确解;m>n 超定方程,寻求最小二乘解;m

MATLAB应用 求解非线性方程

第7章 求解非线性方程 7.1 多项式运算在MATLAB 中的实现 一、多项式的表达 n 次多项式表达为:n a +??++=x a x a x a p(x )1-n 1-n 1n 0,是n+1项之和 在MATLAB 中,n 次多项式可以用n 次多项式系数构成的长度为n+1的行向量表示 [a0, a1,……an-1,an] 二、多项式的加减运算 设 有 两 个 多 项 式 n a +??++=x a x a x a p1(x )1-n 1-n 1n 0和 m b +??++=x b x b x b p2(x )1-m 1-m 1m 0。它们的加减运算实际上就是它们的对应系 数的加减运算。当它们的次数相同时,可以直接对多项式的系数向量进行加减运算。当它们的次数不同时,应该把次数低的多项式无高次项部分用0系数表示。 例2 计算()()1635223-+++-x x x x a=[1, -2, 5, 3]; b=[0, 0, 6, -1]; c=a+b 例3 设()6572532345++-+-=x x x x x x f ,()3532-+=x x x g ,求f(x)+g(x) f=[3, -5, 2, -7, 5, 6]; g=[3, 5, -3]; g1=[0, 0, 0, g];%为了和f 的次数找齐 f+g1, f-g1 三、多项式的乘法运算 conv(p1,p2) 例4 在上例中,求f(x)*g(x) f=[3, -5, 2, -7, 5, 6]; g=[3, 5, -3]; conv(f, g) 四、多项式的除法运算 [Q, r]=deconv(p1, p2) 表示p1除以p2,给出商式Q(x),余式r(x)。Q,和r 仍为多项式系数向量 例4 在上例中,求f(x)/g(x) f=[3, -5, 2, -7, 5, 6]; g=[3, 5, -3]; [Q, r]=deconv(f, g) 五、多项式的导函数 p=polyder(P):求多项式P 的导函数 p=polyder(P,Q):求P·Q 的导函数

第六章非线性方程组的迭代解法

第六章非线性方程组的迭代解法6.4 非线性方程组的数值解法 6.4.1 非线性方程组的不动点迭代法 6.4.2 非线性方程组的Newton法 6.4.3非线性方程组的Newton法

第六章非线性方程组的迭代解法 T n x f x f x f x F )) (),(),(()(21L =设含有n 个未知数的n 个方程的非线性方程组为 (6,4,1)其中为n 维列向量, 0)(=x F T n x x x x ),,(21L =6.4.1 非线性方程组的不动点迭代法 ),,2,1)((n i x f i L =中至少有一个是x 的非线性函数, 并假设自变量和函数值都是实数。多元非线性方程组 (6.4.1)与一元非线性方程f(x)=0具有相同的形式,可以与一元非线性方程并行地讨论它的迭代解法。例如不动点迭代法和Newton 型迭代法。但是,这里某些定理的证明较为复杂,我们将略去其证明。

第六章非线性方程组的迭代解法 T n x x x x x )) (,),(),(()(21???L =Φ=(6.4.2) 并构造不动点迭代法 L ,1,0),()()1(=Φ=+k x x k k (6.4.3) 把方程组(6.4.1)改写成下面便于迭代的等价形式: 的解。是方程组 从而的不动点,是迭代函数即满足连续函数.则的是自变量 是连续的,即且收敛, 若由此生成的序列对于给定的初始点)1.4.6()(),(,,,)(,),(),()(,*****2121)0(x x x x x x x x x x x x x x n n φφ???φ=L K {}k x *)(lim x x k k =∞ →

非线性方程求根问题

计算机学院上机实践报告 一、目的 1.通过本实验,帮助加深对非线性方程求根方法的构造过程的理解; 2.能将各种方法编写为程序并上机实现; 3.比较各种方法在求解同一非线性方程根时,在收敛情况上的差异。 二、容与设计思想 1.用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]的根。 2.方程f(x)=2x3-5x2-19x+42=0在x=3.0附近有根,试写出其三种不同的等价形式以构成三种不同的迭代格式,再用简单迭代法求根,观察这三种迭代是否收敛。 三、使用环境 1. 硬件环境 微型计算机(Intel x86系列CPU)一台 2. 软件环境 Windows2000/XP操作系统 VC++6.0或其它的开发工具。 四、核心代码及调试过程 1.用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]的根主要代码: void bisect(double a,double b,int max_B) { double root, ya,yb,yroot; int i,actual_B; ya=f(a);yb=f(b); if(ya*yb>0) { printf("method failed!\n"); exit(0); } for(i=1;i<=max_B;i++) { root=(a+b)/2;yroot=f(root); //取当前含根区间的中点 if(yroot==0) { a=root;b=root;} else if(yb*yroot>0) //取含根区间为[a,(a+b)/2]

{ b=root;yb=yroot;} Else //取含根区间为[(a+b)/2,b] { a=root;ya=yroot;} if(fabs(b-a)b)) { printf("re_select a proper initial value x0!\n"); exit(0); } if(fabs(x1-x0)

matlab非线性方程的解法(含牛拉解法)

非线性方程的解法(含牛拉解法) 1引 言 数学物理中的许多问题归结为解函数方程的问题,即, 0)(=x f (1.1) 这里,)(x f 可以是代数多项式,也可以是超越函数。若有数*x 为方程0)(=x f 的根,或称函数)(x f 的零点。 设函数)(x f 在],[b a 内连续,且0)()(

非线性方程的数值解法习题解答

第六章非线性方程的数值解法习题解答 填空题: 1. 求方程()x f x =根的牛顿迭代格式是__________________。 Ans:1()1()n n n n n x f x x x f x +-=- '- 2.求解方程 在(1, 2)内根的下列迭代法中, (1) (2) (3) (4) 收敛的迭代法是(A ). A .(1)和(2) B. (2)和(3) C. (3)和(4) D. (4)和(1) 3.若0)()(,故迭代发散。 以上三中以第二种迭代格式较好。 2、设方程()0f x =有根,且'0()m f x M <≤≤。试证明由迭代格式1()k k k x x f x λ+=- (0,1,2,)k =L 产生的迭代序列{}0k k x ∞ =对任意的初值0(,)x ∈-∞+∞,当2 0M λ<< 时,均收敛于方程的根。

线性回归方程——非线性方程转化为线性方程

线性回归方程——非线性方程转化为线性方程 例1.(2015·高考全国卷Ⅰ)某公司为确定下一年度投入某种产品的宣传费,需了解年宣传费x(单位:千元)对年销售量y(单位:t)和年利润z(单位:千元)的影响,对近8年的宣传费和年销售量数据作了初步处理,得到下面的散点图及一些统计量的值. 5631469 表中=,=. (I)根据散点图判断,与,哪一个适宜作为年销售量y关于年宣传费x的回归方程类型(给出判断即可,不必说明理由); (II)根据(I)的判断结果及表中数据,建立y关于x的回归方程; (III)已知这种产品的年利润z与x,y的关系为,根据(II)的结果回答下列问题: (i)年宣传费时,年销售量及年利润的预报值是多少? (ii)年宣传费为何值时,年利润的预报值最大? 附:对于一组数据,,…,,其回归直线的斜率和截距的最小二乘估计分别为:,. 【答案】(Ⅰ)适宜作为年销售量关于年宣传费的回归方程类型;(Ⅱ);(Ⅲ)(i)答案见解析;(ii)千元. 【解析】(I)由散点图可以判断,适宜作为年销售量关于年宣传费的回归方程类型. (II)令,先建立关于的线性回归方程,由于=68, ∴=563?68×=,∴关于的线性回归方程为, 因此关于的回归方程为. (III)(ⅰ)由(II)知,当=49时,年销售量的预报值=, 年利润z的预报值为. (ⅱ)根据(II)的结果知,年利润z的预报值, 所以当,即时,取得最大值. 故年宣传费为千元时,年利润的预报值最大. 例2.某地级市共有200000中小学生,其中有7%学生在2017年享受了“国家精准扶贫”政策,在享受“国家精准扶贫”政策的学生中困难程度分为三个等次:一般困难、很困难、特别困难,且人数之比为5:3:2,为进一步帮助

matlab非线性方程求解

非线性方程的解法 1引 言 数学物理中的许多问题归结为解函数方程的问题,即, 0)(=x f (1.1) 这里,)(x f 可以是代数多项式,也可以是超越函数。若有数*x 为方程0)(=x f 的根,或称函数)(x f 的零点。 设函数)(x f 在],[b a 内连续,且0)()(

相关文档
最新文档