非线性方程组求解及matlab实现分解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

c x
不动点迭代法

从给定的初值x0,按上式可以得到一个数列: { x0, x1, x2, …, xk, … }
如果这个数列有极限,则迭代格式是收敛的。 * x xk 就是方程的根 这时数列{xk}的极限 lim k 上述求非线性代数方程式数值解的方法称为直 接迭代法(或称为不动点迭代法)。这个方法 虽然简单,但根本问题在于当k->∞时,xk是否 收敛于x*,也就是必须找出收敛的充分条件
求得x1
3 3 x2 6 x1 2 0.5
错误的收敛 迭代格式
3 x3 0.375, x4 1.263, x5 0.919, x6 1.028, x7 0.99 x2 2 x8 1.003, x9 0.999, x10 1.000, 当k越来越大时,xk的值越来越接近于 1, 但并不收敛于精确根 x* 3
逐步扫描法计算示例-方程x2-2=0的正数解
计算方程 x 2 2 0 的正数解
二分法

若函数f(x)在区间[a,b]内单调连续,且f(a)f(b)<0, 则在闭区间[a,b]内必然存在方程f(x)=0的根x*
二分法的图形解释 二分法的MATLAB程序
k=0; while abs(b-a)>eps x=(a+b)/2; if sign(f(x))==sign(f(b)) b=x; else a=x; end k=k+1; end
不动点

定义:函数g(x)的一个不动点(fixed point) 是指一个实数P,满足P = g(P) 从图形角度分析,函数y=g(x)的不动点是 y=g(x)和y=x的交点


非线性方程数值求解原理
逐步扫描法
开始
y
输入初值A,步长h
y = f (x)
X1<=A,Y1<=f(X1)
a+h 0 a a+2h b x
X2<=X1+h Y2<=f(X2)
Y1*Y2 > 0
X1<=X2 Y1<=Y2 是
ห้องสมุดไป่ตู้
y
否 打印A,h,X1 结束
0 a
y = f (x)
b
x
逐步扫描法效率较低,常用于求根的初始近似值
二分法是一种可靠的算法,但计算速度较慢
二分法计算示例-方程x2-2=0的正数解
计算方程 x 2 0 的正数解
2
求方程根的精确解


非线性方程(组)的求解一般采用迭代法进行。 迭代法是一种重要的逐次逼近方法。这种方法用某个 固定公式反复校正根的近似值,使之逐步精确化,最 后得到满足精度要求的结果。 常见的迭代算法有


2 f x x 2x 3 0 例题:
构造迭代格式如下: 1 )x 2 x 3 , 即 x 2 x 3,取x0 4, 得迭代格式如下: xk 1 2 xk 3,k 0,1,2, 求得x1 2 x0 3 11 3.317 x2 2 x1 3 9.634 3.104 x3 3.034, x4 3.011 , x5 3.004, 当k越来越大时,xk的值越来越接近于精确 根 x* 3
非线性方程(组)求解

非线性方程(组)数值求解基本原理


多项式求根函数-roots
非线性方程求解函数-fzero

非线性方程组求解函数-fsolve
复习与练习
按以下要求编写一个函数计算 A y / x sin(45) x 的值,其中x>0时,y= 3 x ; x<0时,y=2/x; x=0时,返 回错误信息(x cann’t be zero) 。 要求:1)主函数名称为excer1,x作为输如变量,A作 为输出变量;2) 主函数中包括一个子函数myfun用于 计算y的值。
正确的收敛 的迭代格式
2 f x x 2x 3 0 例题:
如果构造迭代格式如下 : 1 2 1 2 1 )x x 3 , 即 x x 3 ,取x0 4, 2 2 得迭代格式如下: 1 2 xk 1 xk 3 ,k 0,1,2, 发散的迭代 2 格式 1 2 求得x1 x0 3 6.5 2 1 x2 x12 3 19.625 2 x3 191.070,
非线性方程(组)在化学计算中的作用
• 多组分混合溶液的沸点、饱和蒸气压计算
• 流体在管道中阻力计算
• 多组分多平衡级分离操作模拟计算
• 平衡常数法求解化学平衡问题
• 定态操作的全混流反应器的操作分析
非线性方程

非线性方程包括:高次代数方程、超越方程及其它们 的组合 与线性方程相比,非线性方程求解问题无论从理论上 还是从计算公式上都要复杂得多 对于高次代数方程,当次数>4时,则没有通解公式可 用,对于超越方程既不知有几个根,也没有同样的求 解方式。实际上,对于n≥3代数方程以及超越方程都 采用数值方法求近似根。










当k越来越大时,xk的值越来越远离于精确 根
例题:f x x
1 )x
2
2x 3 0
也可以构造迭代格式如 下: 3 3 ,即 x ,取x0 4, x2 x2 得迭代格式如下: xk 1 3 ,k 0,1,2, xk 2 3 3 1. 5 x0 2 2
引言
在945.36kPa(9.33atm)、300.2K时,容器中 充以2mol氮气,试求容器体积。已知此状态下 氮气的P-V-T关系符合范德华方程,其范德华常 数为a=4.17atm•L/mol2, b=0.0371L/mol
数学模型:范德华方程变形可得关于V的非线性 方程
an2 f (V ) ( p 2 )(V nb) nRT 0 V



不动点迭代 牛顿法 弦截法 抛物线法 威格斯坦法(Wegstein)
不动点迭代法
我们可以通过多种方法将方程式
f x 0
例如方程
转化为
x g x
c0
x c 0,
2
可以转化为以下不同形式
2 x x xc (1)
(2)
x
x2 c 1 c x (3) x x 2x 2 x
相关文档
最新文档