资源描述:
《常微分matlab实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、数学与信息科学系实训报告常微分方程初值问题数值解法及其MATLAB实现姓名:学号:专业:信息与计算科学年级:2010级指导教师:朱耀生完成时间:2013年11月25—2013年12月6实验目的:(1)研究满足给定方程的可微函数的数值方法(2)培养matlab编程和上机调试能力实验基本原理和内容:根据给定的初始条件,确定常微分方程惟一解的问题叫常微分方程初值问题。大多数实际问题难以求得解析解,必须将微分问题离散化,用数值方法求其近似解。 一阶常微分方程的初值问题的提法是,求出函数,使满足条件 (1)利用
2、数值方法解问题(1)时,通常假定解存在且惟一,解函数及右端函数具有所需的光滑程度。数值解法的基本思想是:先取自变量一系列离散点,把微分问题(1)离散化,求出离散问题的数值解,并以此作为微分问题解的近似。例如取步长>0,以剖分区间[,],令=+,把微分方程离散化成一个差分方程。以()表微分方程初值问题的解,以表差分问题的解,就是近似解的误差,称为全局误差。因此,设计各种离散化模型,求出近似解,估计误差以及研究数值方法的稳定性和收敛性等构成了数值解法的基本内容1.欧拉法和后退欧拉法原理:function[x,y]=meuler(d
3、f,xspan,y0,h)%用途:改进欧拉公式解常微分方程y'=f(x,y),y(x0)=y0%格式:[xy]=meuler(df,a,b,y0,h)df为函数f(x,y),xspan为求解%区间[x0,xn],y0为初值y(x0),h为步长,[xy]返回节点和数值解矩阵x=xspan(1):h:xspan(2);y(1)=y0;forn=1:(length(x)-1)k1=feval(df,x(n),y(n));y(n+1)=y(n)+h*k1;k2=feval(df,x(n+1),y(n+1));y(n+1)=y(n)+h
4、*(k1+k2)/2;end例题给定的初值问题y′=-y+x+2,0=>h=0.1; y=-1; x=1; for i=1:20 k1=h*oulei_wf(x,y); k2=h*oulei_wf(x+h,y+k1); y=y+0.5*k1+0.5*k2x=x+h; z=ouleij_q(x) t=y-z endz = 4,z = 3.7000,y = -0
5、.6150 z = 1.4329, z =1.4329, t = -2.0479 z =3.7150, z =3.4435, y = -0.2571z =1.5012, z =1.5012, t =-1.7583 z =3.4571, z = 3.2114, y =0.0763z =1.5725, z =1.5725, t =-1.4962z =3.2237, z = 3.0013, y =0.3876z =1.6466, z =1.6466, t =-1.2590z =3.0124,z =2.8112,y =0.6788 z
6、 =1.7231,z =1.7231,t =-1.0444 z =2.8212,z = 2.6391,y =0.9518 z =1.8019,z =1.8019,t =-0.8501z = 2.6482,z =2.4834,y =1.2084z =1.8827,z =1.8827, t =-0.6743 z =2.4916,z =2.3425, y =1.4501 z =1.9653,z =1.9653, t =-0.5152实验结果的分析与研究1.对于欧拉法,步长越小,精度越高,而产生的误差越小。总对于欧拉法,步长越小,精度
7、越高,而产生的误差越小。对于欧拉法体来说,欧拉法的优点是形式简单计算方便,是形式简单,体来说,欧拉法的优点是形式简单,计算方便,缺点是总的运算精度比较低。的增大,误差值也越来越大。算精度比较低。而且随着x的增大,误差值也越来越大。根据欧拉公式的截断误差计算,欧拉法是一阶方法。欧拉公式的截断误差计算,欧拉法是一阶方法。2.对于改进欧拉法,对于改进欧拉法,其基本特征与欧拉法相似,也是步长越小,对于改进欧拉法其基本特征与欧拉法相似,也是步长越小,精度越高,误差越小。优点是精度相对欧拉法来说较高,精度越高,误差越小。优点是精度相对欧拉
8、法来说较高,截断误差为O(h^3),缺点是比欧拉法计算量大。根据欧拉改进法,缺点是比欧拉法计算量大。公式的截断误差计算,欧拉改进法是二阶方法。公式的截断误差计算,欧拉改进法是二阶方法。2.龙格-库塔方法原理:对于龙哥库塔三阶:利用Yn+1 = Yn + h/6(K1 + 4K