第十章非线性方程及非线性方程组解法
非线性结构有限元分析概论
一、线性问题的基本方程
由复杂结构受力平衡问题的虚功方程有:
v T dv vuT qvdv suT qsds u0T R0
vmu
T
••
u dv
v
Du
T
•
u
dv
(10-1)
上式左端为内力的虚功,右端为外力的功。
由于: u N u Bu C
式中 u 为单元体内的位移; u为节点位移; N 形函数阵;
t t t
T
S t t t
dvt
W t t
(10-18)
返回
其中:
W tt o
tv
u
T
q tt tv
中推荐采用BFGS法。
程序对几何非线性的考虑可采用完全的拉格朗
日公式或改进的拉格朗日公式。在非线性动态分析
中采用隐式时间积分(Newmarli法和Wilson- 法) 或显式时间积分(中心差分法)的方法。隐式时间
积分通常用来分析结构的振动问题,显式时间积分
主要用来分析波传布现象。
返回
第一节 有限元基本方程
解此方程也用隐式时间积分,显式时间积分或振形迭加
法求解。
返回
二、非线性问题的基本方程
对于非线性问题通常不能用一步直接求解方案,必须分成
若干步加载,按各个阶段不同的非线性性质逐步求解,即增量求
解方案。
1.增量形式的平衡方程:
已知设:0,△t,2△t‥‥的位移和应力(各载荷步的)
要求出:t+△t步时的位移和应力。
ov oe T o
o e dv
ov
o
T
t o
SdvtW t o来自ovoe Tt o
S
dv
非线性方程组的求解方法及其应用
非线性方程组的求解方法及其应用非线性方程组是数学中一类非常重要的问题,其中每个方程都不是线性的。
与线性方程组不同,非线性方程组的求解通常需要借助于数值方法。
本文将讨论一些常见的非线性方程组求解方法,并介绍它们在实际应用中的一些应用。
1. 牛顿法牛顿法是一种非常常见的非线性方程组求解方法。
该方法基于牛顿迭代法原理,将非线性方程组转化为一系列的线性问题。
牛顿法的基本思想是:通过不断地使用一阶导数和二阶导数的信息来逼近方程组的解。
具体地说,在每一轮迭代中,求解一个方程组:$$F(x^{k})+J(x^{k})\Delta x^{k} =0$$其中$F(x)$表示非线性方程组,$x^k$表示第$k$轮迭代的解,$J(x^k)$表示$F(x)$在$x^k$处的雅可比矩阵,$\Delta x^k$表示下降方向,满足$\|\Delta x^k\|\rightarrow 0$。
值得注意的是,牛顿法在每轮迭代中都需要求解一次雅可比矩阵,这需要大量的计算资源。
因此,在实际应用中,牛顿法通常只适用于相对较小的方程组。
2. 信赖域方法相比于牛顿法,信赖域方法更具有通用性。
信赖域方法的基本思想是:在每轮迭代中,通过构造二次模型来逼近目标函数,并在一个信赖域内搜索下降方向。
具体地说,我们在每轮迭代中将非线性方程组$F(x)$在$x^k$处转化为二次模型:$$m_k(\Delta x)=F(x^k)+\nabla F(x^k)^\top \Deltax+\frac{1}{2}\Delta x^\top B_k\Delta x$$其中,$\nabla F(x^k)$是$F(x)$在$x^k$处的梯度,$B_k$是二阶导数信息。
在这里我们假设$B_k$为正定矩阵。
显然,我们希望在$m_k(\Delta x)$的取值范围内找到一个适当的$\Delta x$,使得$m_k(\Delta x)$最小。
因此,我们需要设定一个信赖域半径$\Delta_k$,并在$B_k$所定义的椭圆范围内查找最优的$\Delta x$。
非线性方程组的解法
非线性方程组的解法
基本思路:
分段线性化方法,将荷载划分成很多小步,逐 步施加
具体操作方法:
显式求解法(增量法) 隐式求解法(迭代法)
清华大学研究生课程——《钢筋混凝土有限元》
清华大学研究生课程——《钢筋混凝土有限元》
显式求解法
将荷载分成若干小步,逐步施加 认为在每个小步中,结构是线性的,同 一荷载步的刚度矩阵相同 不同荷载步的刚度矩阵可以不同 用一系列的折线去近似曲线
某次迭代位移改变量 同级荷载节点总位移 < 误差容限
能量收敛标准
一般以某次迭代的应变能增量为分析对 象,以同级荷载作用下总应变能为参考 标准
某次迭代应变能改变量 同级荷载总应变能 < 误差容限
一般使用无穷范数
清华大学研究生课程——《钢筋混凝土有限元》
清华大学研究生课程——《钢筋混凝土有限元》
注意事项
修正的欧拉折线法(Mid-point Method)
P K2 K1 Pn Pn-1
单元刚度矩阵
已知应力,应变,应变增量
[K n−1 ]
根据当前应力应变求切线刚度矩阵 求中点应力 {σ n '} = {σ n−1 } + [K n−1 ] {dε n }
2
根据中点应力和应变 {σ n '}, {ε n−1 } + n 求此时 2 的切线刚度矩阵 [K n−1 ']
判断对象
力收敛标准 位移收敛标准 能量收敛标准
范数
无穷范数 一范数 二范数
V
V
V
∞
= max Vi
= ∑ Vi
=
判断标准
相对误差 绝对误差
1
范数
无穷范数 一范数 二范数
非线性方程的解法
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阶线性方程组。
《非线性方程组解法》课件
03
常见的拟牛顿法包括DFP方法 和BFGS方法等。
共轭梯度法
01
共轭梯度法是一种基于共轭方向和梯度方向的迭代方法,通过 不断逼近方程的解。
02
共轭梯度法的优点是避免了存储和计算海森矩阵,适用于大规
模非线性方程组的求解。
常见的共轭梯度法包括Fletcher-Reeves方法和Polak-Ribiere方
机械工程
非线性方程组可以用来描述机械 系统的行为和性能,如车辆动力 学、机器人运动等。
航空航天工程
非线性方程组可以用来描述飞行 器的运动和性能,如飞机和火箭 的发射和导航等。
电子工程
非线性方程组可以用来描述电子 系统的行为和性能,如电路设计 和电磁波传播等。
04
非线性方程组的求解软件
MATLAB
强大的矩阵计算能力
MATLAB提供了高效的矩阵运算功能,适用于 大规模的非线性方程组求解。
内置优化工具箱
MATLAB的优化工具箱提供了多种非线性优化 算法,如牛顿法、拟牛顿法等。
用户友好性
MATLAB的用户界面简洁直观,易于学习和使用。
Python的SciPy库
丰富的数学函数库
SciPy库包含了大量的数学函数和算法,可用于非线 性方程组的求解。
《非线性方程组解法》PPT课件
• 非线性方程组概述 • 非线性方程组的解法 • 非线性方程组的应用 • 非线性方程组的求解软件 • 非线性方程组解法的挑战与展望
01
非线性方程组概述
非线性方程组的定义
总结词
非线性方程组是由多个非线性方程组成的数学模型。
详细描述
非线性方程组是指包含多个非线性方程的数学模型,这些方程通常包含未知数和未知数的非线性函数 。
第十章非线性方程及非线性方程组解法
例5 设
f1 ( x, y ) x 2 y 2 5 0 f 2 ( x, y ) ( x 1) y (3x 1) 0 用牛顿法求( x0 , y0 ) (1 ,1)附近的解
解:先计算出偏微商矩阵
f1 x f 2 x f1 2y y 2 x f 2 y 3 x 1 y
第十章 非线性方程及非线性方程组解法
在许多实际问题中常常会遇到求解非线性方程
或非线性方程组的问题。
例如,求n次代数方程
an x n an1 x n1 a1 x a0 0
的根,或求超越方程。
x
e
sin(
X
2
)0
的根,这些都可以表示为求f(x)=0的根,或称为 求函数f(x)的零点。
x 2 x1
x1 x0
f ( x0 )
f ( x0 )
再把 x1 作为节点,利用泰勒展式,令f ( x1 ) 0,
f ( x1 )
f ( x1 )
如此下去,得到牛顿法的迭代序列
x n 1 x n f ( xn ) f ( x n )
牛顿法的几何意义 切线方程:y f ( x0 ) f ( x0 )(x x.0 )
(10-24)
只要系数矩阵的行列式
f1 ( x0 , y0 ) x J f 2 ( x0 , y0 ) x f1 ( x0 , y0 ) y 0 f 2 ( x0 , y0 ) y
则方程组(10—24)的解可以写成
x1 x0 1 J0 1 y1 y0 J0 f1 ( x0 , y0 ) y f 2 ( x0 , y0 ) y f1 ( x0 , y0 ) f 2 ( x0 . y0 ) f1 ( x0 , y0 ) f 2 ( x0 , y0 ) f1 ( x0 . y0 ) x f 2 ( x0 , y0 ) x
非线性方程组数值解法课件
目 录
• 非线性方程组概述 • 迭代法求解非线性方程组 • 牛顿法求解非线性方程组 • 拟牛顿法求解非线性方程组 • 非线性方程组数值解法的应用
01
非线性方程组概述
非线性方程组的定义与分类
定义
非线性方程组是由多个非线性方 程组成的数学模型,描述了多个 变量之间的关系。
在工程问题中的应用
航空航天工程
土木工程
非线性方程组数值解法用于设计和优 化飞行器、卫星和火箭的结构和性能。
在建筑设计、桥梁和高层建筑的结构 分析中,非线性方程组数值解法用于 模拟结构的承载能力和稳定性。
机械工程
在机械设计中,非线性方程组数值解 法用于分析复杂机械系统的动力学特 性和稳定性。
在金融问题中的应用
拟牛顿法的收敛性分析主要基于Hessian 矩阵的条件数和近似矩阵的误差界。在适 当的条件下,拟牛顿法能够保证全局收敛 性和局部超线性收敛性。
拟牛顿法的实现
总结词
拟牛顿法的具体实现可以通过不同的算法实 现,如DFP算法和BFGS算法等。
详细描述
DFP算法(Davidon-Fletcher-Powell)和 BFGS算法(Broyden-Fletcher-GoldfarbShanno)是两种常见的拟牛顿算法。它们 的主要区别在于近似矩阵的更新方式。DFP 算法采用三对角化方法更新近似矩阵,而 BFGS算法采用迭代更新的方式。在实际应 用中,BFGS算法通常比DFP算法更受欢迎, 因为它在大多数情况下都能提供更好的收敛 效果。
05
非线性方程组数值解法的 应用
在物理问题中的应用
量子力学方程
非线性方程组数值解法在 量子力学中用于描述微观 粒子的行为和相互作用。
非线性方程(组)的解法
lnim(bn
an )
lim
n
2n1
(b
a)
0
lim
n
an
lim
n
bn
x
取
x
cn
1 2
(an
bn
)为
x 的近似解。
7
二分法
迭代终止准则
an - bn
即
x - cn
bn an 2
2
8
2.2一般迭代法
2.2.1 迭代法及收敛性
对于 f (x) 0 有时可以写成 x (x) 形式 如: x3 x 1 0 x 3 x 1
12
例题
例2.2.1 试用迭代法求方程 f (x) x3 x 1 0
在区间(1,2)内的实根。 解:由 x 3 x 1建立迭代关系
xk1 3 xk 1 k=0,1,2,3…… 计算结果如下:
13
例题
精确到小数点后五位
x 1.32472 1 105
2
14
例题 但如果由x x3 1建立迭代公式
xk1 xk3 1 k 1,2,...
仍取 x0 1.5,则有 x1 2.375 ,x2 12.39 显 然结果越来越大,{xk }是发散序列
15
2.3 Newton迭代法
设x*是方程f (x) = 0的根, 又x0 为x* 附近的一个值,
将f (x) 在x0 附近做泰勒展式:
f (x)
二分法
用二分法(将区间对平分)求解。
令
a1
a, b1
b, c1
1 2
(a1
b1 )
若 f (a1) f (c1) 0,则[a1, c1] 为有根区间,否 则 [c1,b1]为有根区间
非线性方程和方程组的数值解法
1. 使用二分法求3250x x --=在区间[2,3]上的根,要求误差不超过30.510-⨯.解:首先确定二分次数,根据误差估计式得,取k=10即可。
使用二分法计算10次,结果见下表2. 利用0)ln(=+x x 构造收敛的迭代格式,并求在0.5附近的根.解 首先考虑迭代格式1ln ,0,1,2,...k k x x k +=-=,相应的迭代函数()ln ,x x ϕ=-容易计算'1()x xϕ=-,在0.5附近有 ''()2,()21x x ϕϕ≈-≈>.迭代格式1ln ,0,1,2k k x x k +=-=不收敛,利用上题结论,函数()ln x x ϕ=-的反函数1()x x e ϕ--=,建立迭代格式1,0,1,2,...,k x k x e k -+==取初值00.5x =,计算结果见下表:最后*180.5671408x x≈=3.求方程310x x--=在]2,1[上的唯一正根,精度410-解考虑函数3()1, f x x x=--显然(1)10,(2)50f f=-<=>,故在[1,2]上方程有根存在;另外'2()312,[1,2],f x x x=-≥∈因此在[1,2]上方程有唯一的根。
建立迭代格式1nx+=迭代函数()xϕ=在[1,2]上满足23'131()(1)3x xϕ-=+<根据收敛性定理,迭代格式1nx+=[1,2]x∈均收敛。
例如,取初值x=1.5,并计算结果如下:方程31x x--=0在[]1,2上的精确解是* 1.324718x=4.利用简单加速方法,求方程xx e-=在x=0.5附近得一个根,精度510-。
解考虑'(),()0.6x xx e x e Lϕϕ--==-=≈-.利用简单加速方法()1111111n nnn nL Lx xx x xϕ+++--⎧=⎪⎨=-⎪⎩得()1111 1.60.6nxnnn nx ex x x-+++⎧=⎪⎨=+⎪⎩取初值00.5x =,计算结果列表如下:5. 利用Newton 法解方程x=cosx ,取初值0x =1.解 考虑()cos f x x x =-,建立Newton 迭代格式:()()01'1,,0,1,2.....n n n n x f x x x n f x +=⎧⎪⎨=-=⎪⎩方程x=cosx 的精确解是*x =0.739 085 133……。
第十章非线性方程及非线性方程组解法
由条件(2),有
x1* x2* (x1* ) (x2* ) L x1* x2* x1* x2*
导出矛盾,唯一性得证。
收敛充分性定理(一、3)
对任意x0 [a, b],由迭代公式有
xn x* (xn1) (x* ) L xn1 x*
xn1 (xn ) (n 0,1, 2,L )
收敛于x* .
收敛充分性定理(三、2)
证:因 ' (x)在O(x*, *)内连续,且 ' (x) 1,故存 在正数L 1, *, 使得对x [x* , x* ],有
'(x) L 1 另一方面,由 (x*) x*, 又有
(x) x* (x) (x*) L x x* 即 (x) [x* , x* ]。由上面定理知,迭代序列 xn1 (xn )收敛于x*。
xn1 (xn ) (n 0,1,L )
均收敛于x*,并有
x* xn
Ln 1 L
x1 x0
收敛充分性定理(一、2)
证:由条件(2)知(x)在[a, b]上连续。 令 (x) x (x),则 (x)在[a,b]上连续,且
(a) a (a) 0, (b) b (b) 0 故存在 [a,b],使得() 0,即 (), 所以方程x (x)在[a,b]内有根。
收敛充分性定理(一、1)
定理. 设函数 (x)在区间[a, b]上满足条件 (1)对任意x [a, b],都有a (x) b;
(2)存在常数0 L 1, 使得对一切x, y [a, b],都有
(x) ( y) L x y
则方程x (x)在[a, b]内有唯一的根x*,且对任何
初值x0 [a, b], 迭代序列
非线性方程(组)的解法
即
x - cn
bn an 2
2
8
2.2一般迭代法
2.2.1 迭代法及收敛性 对于 f ( x) 0 有时可以写成 x ( x) 形式 如: x3 x 1 0 x 3 x 1
x 1 x3
x cos x 0 x cos x
4
二分法
用二分法(将区间对平分)求解。 令 a1 a, b1 b, c1 1 2 (a1 b1 ) 若 f (a1 ) f (c1 ) 0,则 [a1 , c1 ] 为有根区间,否 则 [c1 , b1 ]为有根区间 记新的有根区间为 [a2 , b2 ], 则
[a1 , b1 ] [a2 , b2 ]
18
3.非线性方程组的迭代解法
f1 ( x1 , x2 , , xn ) 0 f1 ( x) f1 ( x1 , L , xn ) 或 F ( x) L 0 L f ( x) f ( x , L , x ) f ( x , x ,, x ) 0 n n பைடு நூலகம் n 1 n n 1 2
an x bn
n 1,2...... 1 lim(bn an ) lim n 1 (b a) 0 n n 2
lim an lim bn x
n n
1 取 x cn (an bn ) 为 2
x 的近似解。
7
二分法
迭代终止准则
且
b2 a2 1 2 (b1 a1 )
5
二分法
对 [a2 , b2 ]重复上述做法得
非线性方程组的解法
非线性方程组的解法
非线性方程组的解法包括:
(1)近似法。
近似法是根据所给非线性方程组,使用一定的数值方法,建立非线性方程组结果的拟合曲线,以此求解非线性方程组的常用方法,目前有贝塔、拉格朗日近似法和微分近似法等。
(2)多元分割法。
多元分割法根据非线性方程组的参数和变量空间,
将整个运算范围分割成多余小区间,利用各区间中只含有一个未知变
量的简单方程组,将非线性方程组转换成多个一元方程组,再用一次法、弦截法和二分法等算法求解,最终得出整个非线性方程组的解。
(3)迭代映射法。
迭代映射法是通过给定一个初始值,然后利用迭代,反复运算,最终达到收敛点的一种方法,主要包括牛顿法、收敛法、
弦截法、松弛法和隐函数法等。
(4)最小二乘法。
最小二乘法是将非线性方程组表示为残差函数,然
后求解残差函数最小值,获得未知变量的最优解,常用于数值分析中。
(5)特征法。
特征法是采用将非线性方程组表示为线性方程组特征值
和它们关于某一特征量的关系式,利用梯度下降法,最小化残差函数,求解非线性方程组的方法。
以上是非线性方程组的解法的简单综述,它们在一定程度上增加了解决非线性方程组的效率,但并非所有情况都能使用以上求解方法。
正确使用相应的求解方法就可以有效的求解非线性方程组,以便更好的解决实际问题。
非线性方程(组)的解法
f ( x) f ( xk ) f ( xk )(x xk ) 一元函数 F ( x) F ( x k ) F ( xk )(x xk ) 0 x k为向量 F ( x k )(x x k ) F ( x k ) x x k F ( x k )1 F ( x k )
18
3.非线性方程组的迭代解法
f1 ( x1 , x2 , , xn ) 0 f1 ( x) f1 ( x1 , L , xn ) 或 F ( x) L 0 L f ( x) f ( x , L , x ) f ( x , x ,, x ) 0 n n n 1 n n 1 2
9
迭代法及收敛性
考虑方程 x ( x)。 这种方程是隐式方程,因而不能直接求出它的根。
但如果给出根的某个猜测值 x0, 代入 x ( x) 中的右端得到 x1 ( x0 ),再以 为一个猜测值,
x1
代入 x ( x) 的右端得 x2 ( x1 ) ,反复迭代 得
1 f ( x ) f ( x0 ) ( x x0 ) f ( x0 ) ( x x0 )2 f ( ) 2 其中在x和x0之间
0 f ( x) f ( x0 ) ( x x0 ) f ( x0 ) 0
16
Newton迭代法
有:
*
f ( x0 ) x x0 f ( x0 )
能为力时,数值方法则可以借助于计算机出色完成。
2
2.1二分法
概念:
有根区间:存先确定有限区间:依据零点定理。 设 f ( x) C[a, b],且 f (a) f (b) 0 ,则 方程 f ( x) 0在区间 (a, b)上至少有一个根。 如果 f ' ( x) 在 (a, b)上恒正或恒负,则此根唯 一。
《非线性方程组解法》课件
2 缺点
牛顿法需要计算和存储雅可比矩阵和海塞矩阵,计算复杂度高,可能会导致数值不稳定。
Байду номын сангаас
通过迭代逼近非线性方程组的解,使用一阶导数和二阶导数来确定每次迭代的方向和步长。
2
拟牛顿法
通过构造逼近矩阵来近似牛顿法中的二阶导数,以减少计算量和存储空间。
牛顿法的数学原理
牛顿法基于泰勒展开式,利用一阶和二阶导数来逼近非线性方程组的解。通 过迭代求解线性方程组,不断逼近真解。
牛顿法的收敛性和收敛性分析
非线性方程组的求解在数学和工程领域有着重要的应用。它可以用于解决许 多实际问题,包括优化、控制系统、物理建模等。
非线性方程组求解方法
非线性方程组的求解方法多种多样,包括牛顿法、拟牛顿法、极小化方法、 基于多项式的方法等。根据问题的性质和约束条件选择合适的方法。
基本求解方法:牛顿法和拟牛顿法
1
牛顿法
《非线性方程组解法》 PPT课件
非线性方程组是一组不满足线性关系的方程,求解其意义重大。本课件将介 绍非线性方程组的求解方法,包括牛顿法和拟牛顿法等。
什么是非线性方程组
非线性方程组是一组不满足线性关系的方程,其中至少包含一个非线性方程。 与线性方程组不同,非线性方程组的解不能用直线或平面表示。
非线性方程组求解的重要性
收敛性
牛顿法可以收敛到方程组的解,但收敛速度可能受初始点的选择和方程组的性质影响。
收敛性分析
通过研究雅可比矩阵和海塞矩阵的特征值来分析牛顿法的收敛性。
牛顿法的区域收敛和全局收敛
牛顿法有时只能收敛到局部最优解,而非全局最优解。通过适当的初始点选 择和步长控制可以提高全局收敛性。
非线性方程组的求解
非线性方程组的求解摘要:非线性方程组求解是数学教学中,数值分析课程的一个重要组成部分,作为一门学科,其研究对象是非线性方程组。
求解非线性方程组主要有两种方法:一种是传统的数学方法,如牛顿法、梯度法、共轭方向法、混沌法、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 nn n n n则方程组(1)也可表示为:0)(=X F(2) 其中:X ∈R n ,F ∶R n →R 0, F(X) ∈R n , R n 为赋值空间。
非线性方程组的解法
非线性方程组的解法
主要有两类: 几何非线性,材料非线性 几何非线性 物理位置:平衡方程必须按照变形后的几何位置建立 数学描述:物体的变形一般由位移的一阶微分求得, 当变形很大,高阶微分不能忽略 举例:
非线性方程组的解法
主要有两类: 几何非线性,材料非线性 材料非线性 混凝土,钢筋,粘结滑移,时变效应 一般认为,混凝土开裂即存在材料非线性 其他非线性:边界非线性 常见的是接触问题
[K ][∆δ ] = [∆P ]
n n n
[∆δ n ] = [K n ]−1 [∆Pn ]
[δ n ] = [δ n−1 ] + [∆δ n ]
步骤:……. 缺点:存储两个刚度,存贮量大
非线性方程组的解法
逐步增量法-中点刚度增量法
施加一半荷载,求出相应的位移(中点位移)
[K n−1 ]∆δ n − 1 = 1 [∆Pn ]
非线性方程组的解法
逐步搜索法 可求出极限荷载,无法求解
步骤:1. 加一级荷载 ∆P ,结果发散,退回 2. 加 1 ∆P ,若结果发散,再次退回
2
P −δ
下降段
3. 加
1 ∆P ,……至收敛,得到极限荷载 4
非线性方程组的解法
虚加刚性弹簧法 加虚拟弹簧, 改变原结构形式,新的结构形式 曲线在一定范围内没有下降段
[B] = [M ][R][Q]
其他数值方法
刚体弹簧元
k n [D] = 0
Tresca屈服条件
0 ks
本构矩阵 (2x2)
平面应变下的莫尔-库仑屈服条件
平面应力下的莫尔-库仑屈服条件
其他数值方法
刚体弹簧元
其他数值方法
无网格法
非线性方程及非线性方程组解法
不动点原理证明
• 不动点原理证明
证明.由∣xn+1-xn∣≤L∣xn-xn-1∣≤Ln∣x1-x0∣ 则对任何自然数 p ∣xn+p-xn∣≤ ∣xn+p- xn+p-1∣+∣xn+p-1- xn+p-2∣+…+∣xn+1- xn∣ ≤(L n+p-1+Ln+p-2+…+Ln)∣x1-x0∣ ≤Ln/(1-L)∣x1-x0∣. 因而{xn}是 Cauchy 序列有极限 ξ ,并且有估计: ∣xn-ξ ∣≤Ln/(1-L)∣x1-x0∣. 由 xn+1=φ(xn)取极限得 ξ =φ(ξ ).若有 ζ≠ξ ,ζ=φ(ζ) 则发生矛盾: ∣ζ-ξ ∣=∣φ(ζ)-φ(ξ )∣≤L∣ζ-ξ ∣<∣ζ-ξ ∣, 惟一性得证.
‴f(1) ‴f(1.5)
– x6=1.3242,误差限0.00390 625(真值ξ=1.3247…,误 差e*=-0.0005…).有三位有效数字.实际上x5就有三 位有效数字了.
10.2不动点迭代法
• 求非线性函数f(x)零点ξ
– 化成x= φ(x),ξ=φ(ξ) – 迭代
• 取初始近似x0 • 计算 xn+1=φ(xn), n=0,1,2,… 直到∣xn+1-xn∣≤ε.(∣(xn+1-xn)/xn+1∣≤ε)
Newton迭代法在f (x )=0单根 ξ 附近是二阶收敛的,并且有 ∣x n +1 - ξ ∣≈ • ∣f注 ″(ξ )/(2f ′(ξ ))∣∣x n - ξ ∣2 – Newton迭代法也可 视为不动点迭代法 φ(x )=x-f(x)/f′(x) – 单根的假设是必要 的.例如,求(x-1)2=0 的二重根1.Newton 迭代是线性收敛的: xn+1-1=(xn-1)/2
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(
x
)
n
lim
n
x
n
若
{x
}
n
收敛,即
lim xn x*,则:
n
x* (x*) f (x*) 0
迭代过程的几何表示
x (x) :
y x 交点即真根。
y (x)
yx
y
Q1
Q2
P* P2
O x* x2
P1
x1
y (x)
P0
x0
x
例:求方程 f (x) x3 x 1 0 在x0 1.5附近的根x*. 解:(1) 将方程改写为 x 3 x 1
第十章 方程求根
求解非线性方程
f (x) 0 f 是非线性函数,
例:代数方程
a x a x a x a f (x) n
n1 L
0, n 1。
n
n1
1
0
例: 超越方程
f (x) ex sin x 0
§1. 非线性方程实根的对分法(二分法)
设 f (x) 在[a,b] 上连续且 [a,b] 有且仅有一个根又
xn1 (xn ) (n 0,1,L )
均收敛于x*,并有
x* xn
Ln 1 L
x1 x0
收敛充分性定理(一、2)
证:由条件(2)知(x)在[a, b]上连续。 令 (x) x (x),则 (x)在[a,b]上连续,且
(a) a (a) 0, (b) b (b) 0 故存在 [a,b],使得() 0,即 (), 所以方程x (x)在[a,b]内有根。
可先用二分法或经验确定迭代初值x0 0.5,再按牛
顿公式进行迭代。
Newton法具有收敛快,稳定性好,精度高等优点,是求 解非线性方程的有效方法之一。但它每次迭代均需计算函 数值与导数值,故计算量较大。而且当导数值提供有困难 时, Newton法无法进行。
牛顿法应用举例
对于给定正数C,应用牛顿法解二次方程 x2 C 0
依此类推,得
xn x* Ln x0 x*
因 0 L 1, 所以
lim
n
xn
x*
即对任意初值x0 [a, b], 迭代序列xn均收
敛到有
xk 1 xk (xk ) ( xk 1) L xk xk 1
L Lk x1 x0
收敛充分性定理(一、4)
依次产生迭代格式,称 Newton 法:
x x x f ( )
n1
n
n
f ' (xn),
n 0, 1, 2,
Newton 法的几何解释
当 x0 在取后(在真根 附近),过 x0, f (x0)
作 f (x) 的切线,则切线方程:
y
f (x0)
f
'
(x0)(x x0)
(0,f(0))
改进
x%k1 ( xk )
xk1 ( x%k1)
xk 1
xk 1
(xk 1 x%k 1)2 xk 1 2x%k 1 xk
§3. Newton 法
非线性问题的最简单解法是线性近似.
将非线性方程线性化,以线性方程的解逐步逼
近非线性方程的解,这就是Newton法的基本思 想
f ( x ) 0 在真根附近 x 点展开成 Taylor 级数:
由此建立迭代公式 xk1 3 xk 1 (k 0,1, 2L )
k0 1
2L 7
8
xk 1.5 1.35721 1.33086 L 1.32472 1.32472 迭代收敛。
(2) 若将方程改写为 x x3 1
建立迭代公式 k0
xk1 xk3 1.
1
2L
xk 1.5 2.375 12.39 L 迭代不收敛。
于是,对任意正整数n, p,有
x x x x x x x x
L
n p
n
n p
n p1
n p1
n p2
n1
n
L x x L x x L x x n p1 n p2 L n
1
0
1
0
1
0
L L L x x n( p1 p2 L 1)
1
0
1 Lp
1 L
Ln
x1
x0
令p ,得
x x x x* Ln
3),
若
f
ai
2
bi
0,则得到根
x ai bi . 2
二分法的收敛性
f (x)
二分法产生一个有根区间:
[a, b]
[a1,b1] L
[a
,
n
b
]
n
[a
,
n
b
]
n
区间长度:
a1 a x*
b1
x0
b
b a b a 1 ( ) L
n
n2
n 1
n 1
a b 当n 足够大时,取近似值
1
2n
n 1 L 1 0
收敛充分性定理(二、1)
定理. 设函数 (x)在区间[a, b]上满足条件 (1)对任意x [a, b],都有a (x) b;
(2)存在常数0 L 1, 使得对一切x [a, b],都有
'(x) L
则方程x (x)在[a, b]内有唯一的根x*,且对任何
初值x0 [a, b], 迭代序列
取。如果当 x [a, b]时 ' (x) 0,则该迭代过程只
可能是线性收敛。
对牛顿公式
xk 1 xk
f (xk ) f ' (xk )
其迭代函数为
(x)
x
f (x) f '(x)
由于
'(x)
f (x) f '' (x)
f
'
2
( x)
假定x*是f (x)的一个单根,即f (x* ) 0, f ' (x*) 0,则
n
n p
n p1
n p1
n p2
n1
n
(L L x x x x
p1 p2 L 1) 1
n1
n 1 L n1
n
令p ,得
x x x x * 1
n 1 L n1 n
x x 可通过检查 来判断迭代过程应否终止。
n1
n
例:用简单迭代法求方程 f (x) x2 x 1 0 的根。
解:因 f (1.5) 0.25 0,
f (2) 1 0
[1.5, 2] 为有根区间。
(1)x x 1 1(x) 因 1.5 1.5 1 1(x) 2 1 2
且
1' (x) 2
1 1 1 x 1 2 2.5 3.162
(2)
x 1 1 x
2(x)
因
1.5
1
1 2
2
(
x)
1
1 1.5
2
且
' 2
(
x)
1 x2
1 1.52
则称该迭代过程是p阶收敛的。 p 1为线性收敛,p 1为超线性收敛, p 2为平方收敛。
定理:对于迭代过程xk1 (xk ),如果 ( p) (x)在所
求根x*的邻近连续,并且
' (x*) "(x*) L ( p1) (x*) 0; p (x*) 0
则该迭代过程在点x*邻近是p阶收敛的。
xn1 (xn ) (n 0,1, 2,L )
收敛于x* .
收敛充分性定理(三、2)
证:因 ' (x)在O(x*, *)内连续,且 ' (x) 1,故存 在正数L 1, *, 使得对x [x* , x* ],有
'(x) L 1 另一方面,由 (x*) x*, 又有
(x) x* (x) (x*) L x x* 即 (x) [x* , x* ]。由上面定理知,迭代序列 xn1 (xn )收敛于x*。
xn1 ( xn ) (n 0,1,L )
均收敛于x*,并有
x* xn
Ln 1 L
x1 x0
收敛充分性定理(二、2)
证:设x, y为[a,b]上任意两点,由微分中值
定理,在x, y之间至少存在一点,使得 (x) ( y) '( )(x y)
(x) ( y) '( )(x y)
f(x) f( x0 ) (x- x0 ) f ' ( x0 )
xx0 2
f ('' x0 )
2!
取线性部分近似代替
f(x) 0 : f(x ) f ' (x )xx 0
0
0
0
解出x作为近似根x : 1 x1 x0 f( x0 ) f (' x0 ) ( f (' x0 ) 0)
实际用迭代法计算时,先用对分区间法求较好的初值, 然后再进行迭代。
迭代法加速(埃特金方法)(1)
设x0是根x*的某个预测值,通过两次迭代校正
有
x1 ( x0 )
x2 ( x1)
由微分中值定理,有
x1 x* (x0 ) (x* ) ' (1)(x0 x* ) x2 x* (x1) (x* ) ' (2 )(x1 x* ) 假定 ' (x)改变不大,近似地取某个近似值L,
1 2.25
根据定理,任取x0 [1.5, 2],由这两种等价方程所构造的 简单迭代方法都收敛,且第一种所产生的迭代序列收敛较快。
收敛充分性定理(三、1)
定理:如果函数 (x)在x*的一邻域O(x*, *) 内连续可微,x*为方程x (x)的根,且 ' (x) 1,则存在正数 , *,使得对任意 x0 [x* , x* ], 迭代序列