[数学]常微分方程的数值解.ppt

  1. 1、本文档共52页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[数学]常微分方程的数值解

称中点公式,相当于数值积分的中矩形公式: 如取a= ? ,则c1= c2= ?, ?2=?21 =1,即为改进Euler公式。 若取a= 1,则c1= 0,c2= 1, ?2=?21 = ? ,得 例:蛇形曲线的初值问题 令f(x,y)=y/x –2y2, 取f(0,0)=1, h=0.2, xn=nh , ( n = 1,2,…,15) 2阶龙格-库塔公式计算格式: k1=yn/xn – 2yn2, k2 = (yn+hk1)/(xn+h) – 2(yn+hk1)2 yn+1=yn + 0.5h[ k1 + k2] x0=0;y0=0;h=.2; x=.2:h:3; k1=1; k2=(y0+h*k1)/x(1)-2*(y0+h*k1)^2; y(1)=y0+.5*h*(k1+k2); for n=1:14 k1=y(n)/x(n)-2*y(n)^2; k2=(y(n)+h*k1)/x(n+1)-2*(y(n)+h*k1)^2; y(n+1)=y(n)+0.5*h*(k1+k2); end y1=x./(1+x.^2); subplot(221) plot(x,y1,x,y1,b*) subplot(222) plot(x,y,x,y,o) subplot(223) plot(x,y,x,y,o,x,y1,x,y1,b*‘) 三、三阶与四阶Runge-Kutta方法 当r=3时,R-K公式表示为 其中 为8个待定常数。 上式的局部截断误差为 类似二阶的推导过程,将K2, K3按二元函数展开,使Tn+1= O(h4),得 方程有8个未知数,解不唯一。 满足该条件的公式统称为三阶R-K公式。 其中一个常用公式为: 当r=4时,利用相同的推导过程,经过较复杂的计算,可以得出四阶R-K公式的成立条件。 下列经典公式是其中常用的一个: 4、一阶常微分方程组和高阶微分方程的 数值解法简介 一阶常微分方程组的数值解法: 下列包含多个一阶常微分方程的初值问题: 称为一阶常微分方程组的初值问题。 引进向量记号: 则上述一阶常微分方程组的初值问题化为矩阵形式: 它在形式上跟单个微分方程的初值问题形式完全相同,只是函数变成了向量函数。故前面介绍的一切数值方法都适用,只要把函数换成向量函数即可。 k1=f(xn,yn), k2=f(xn+0.5h,yn+0.5hk1) k3=f(xn+0.5h,yn+0.5hk2), k4=f(xn+h,yn+hk3) yn+1= yn+ h[k1+2k2+2k3+k4]/6 (n = 0, 1, 2, ·····,N) 四阶龙格-库塔公式 数值求解: 狐狸和野兔问题——常微分方程组 在一个生物圈中,只有野兔和狐狸两种动物,记y1 为野兔数量, y2 为狐狸数量. 设有足够的食物供野兔生存,而狐狸只以野兔为食物. 模型如下 自变量x ∈(0, 15), 初值条件为: y1(0)=20, y2(0)=20 t0=0;t1=15; %设置区域 y0=[20 20]; %给定初值 [t,y]=ode23(‘lot1’,t0,t1,y0); %求解 plot(t,y) %绘图 function z=lot1(x,y) z(1,:)=y(1)-0.01*y(1).*y(2); z(2,:)=-y(2)+0.02*y(1).*y(2); 求解常微分方程: (1)定义函数; (2)调用ode23 5、高阶常微分方程的数值解法: 可化为一阶常微分方程组求解。 例如,二阶常微分方程初值问题 引进新的变量,令z=y’,即可将上述二阶方程化为如下的一阶方程组的初值问题: 例 求下列高阶微分方程的数值解: 解:显然 假设 则 即二阶问题化为微分方程组的初值问题。 6、二阶常微分方程边值问题数值方法 考虑方程: 结合下述三种边界条件之一: 边界问题的解法:打靶法、有限差分法 (6.4)式中 它们分别称为第一、第二、第三边界问题。 打靶法 基本思路:将边值问题转化为初值问题考虑。或者说适当选择初始值使初值问题的解满足边值条件。然后用求解初值问题的任一种有效的数值方法求解。 以第一边界条件为例 考虑边值问题: 取y0=a , 考虑初值问题 待定,由数值解法求解(5.5)得到在 处的解 , 使 ,这里 为给定允许误差界,就停止迭代改进, 输出作为数值解。 求解非线性方程 若 , 则得所求数值解。当 该方程可用二分法、正割法或Ne

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档