matlab 非线性状态方程,非线性方程组求解及matlab实现.ppt

非线性方程(组)求解 复习与练习 按以下要求编写一个函数计算 的值,其中x>0时,y= ; x<0时,y=2/x; x=0时,返回错误信息(x cann’t be zero) 。 要求:1)主函数名称为excer1,x作为输如变量,A作为输出变量;2) 主函数中包括一个子函数myfun用于计算y的值。 引言 在945.36kPa(9.33atm)、300.2K时,容器中充以2mol氮气,试求容器体积。已知此状态下氮气的P-V-T关系符合范德华方程,其范德华常数为a=4.17atm?L/mol2, b=0.0371L/mol 数学模型:范德华方程变形可得关于V的非线性方程 非线性方程 非线性方程包括:高次代数方程、超越方程及其它们的组合 与线性方程相比,非线性方程求解问题无论从理论上还是从计算公式上都要复杂得多 对于高次代数方程,当次数>4时,则没有通解公式可用,对于超越方程既不知有几个根,也没有同样的求解方式。实际上,对于n≥3代数方程以及超越方程都采用数值方法求近似根。 逐步扫描法 逐步扫描法计算示例-方程x2-2=0的正数解 计算方程 的正数解 二分法 二分法计算示例-方程x2-2=0的正数解 求方程根的精确解 非线性方程(组)的求解一般采用迭代法进行。 迭代法是一种重要的逐次逼近方法。这种方法用某个固定公式反复校正根的近似值,使之逐步精确化,最后得到满足精度要求的结果。 常见的迭代算法有 不动点迭代 牛顿法 弦截法 抛物线法 威格斯坦法(Wegstein) 不动点迭代法 不动点迭代法 从给定的初值x0,按上式可以得到一个数列:{ x0, x1, x2, …, xk, … } 如果这个数列有极限,则迭代格式是收敛的。这时数列{xk}的极限 就是方程的根 上述求非线性代数方程式数值解的方法称为直接迭代法(或称为不动点迭代法)。这个方法虽然简单,但根本问题在于当k->∞时,xk是否收敛于x*,也就是必须找出收敛的充分条件 例题: 例题: 例题: 不动点 定义:函数g(x)的一个不动点(fixed point)是指一个实数P,满足P = g(P) 从图形角度分析,函数y=g(x)的不动点是y=g(x)和y=x的交点 不动点定理 设有(i) g,g’ ∈C[a,b], (ii) K是一个正常数,(iii) p0∈(a,b), (iv)对所有x ∈[a,b],有g(x)∈[a,b] 如果对于所有x ∈[a,b],有|g’(x)|≤K<1,则迭代pn=g(pn-1)将收敛到惟一的不动点P ∈[a,b], 。在这种情况下,P称为吸引(attractive)不动点。对于所有x ∈[a,b],有|g’(x)| >1,则迭代pn=g(pn-1)将不会收敛到P点。在这种情况下,P称为排斥(repelling)不动点,而且迭代显示出局部发散性 不动点迭代的图形解释 不动点迭代的图形解释 牛顿法 牛顿法也称为牛顿-拉普森法或者切线法。由于这个方法的计算结果颇佳,而计算过程也比较简单,所以被普遍采用。 牛顿法的核心内容是通过泰勒级数将非线性方程式转化为线性方程式,然后用迭代法求解。 牛顿法原理 设方程式 的近似根为 则 对 的泰勒级数展开式为 牛顿法的几何意义 例:牛顿法计算x^2-25=0的解 f(x)=x2-25,则f’(x)=2x 可构造迭代公式如下: 取x0=2代入上式,得x1=7.25,继续递推, 依次得5.35、5.0114、5.000001、5.0000000001 … 牛顿法注意事项 在有根区间[a,b]上, 连续且不变号,则只要选取的初始近似根x0满足 ,切线法必定收敛。 在单根附近,牛顿公式恒收敛,而且收敛速度很快。但是需要注意如果初始值不在根的附近,牛顿公式不一定收敛 在实际使用中,牛顿法最好与逐步扫描法结合起来,先通过逐步扫描法求出根的近似值,然后用牛顿公式求其精确值,以发挥牛顿法收敛速度快的优点 弦截法 牛顿迭代法收敛速度快,但它要求计算函数导数的值。在科学与工程计算中,常会碰到函数导数不易计算或者算式复杂而不便计算的情况 弦截法的基本思想与牛顿法相似,即将非线性函数线性化后求解。两者的差别在于弦截法实现函数线性化的手段采用的是两点间的弦线(用差商代替导数),而不是某点的切线 弦截法注意事项 与牛顿法只需给出一个初值不同,弦截法需要给出两个迭代初值。如果与逐步扫描法结合

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值