数学建模与数学实验 微分方程
数学建模与数学实验 微 分 方 程
实验目的 1.学会用 MATLAB求简单微分方程的解析解. 2.学会用 MATLAB求微分方程的数值解 验内 1,求简单微分方程的解析解, 2.求微分方程的数值解 3.数学建模实例 A 4.实验作业
实验目的 实验内容 2.学会用MATLAB求微分方程的数值解. 1.学会用MATLAB求简单微分方程的解析解. 1.求简单微分方程的解析解. 4.实验作业. 2.求微分方程的数值解. 3. 数学建模实例.
求微分方程的数值解 (一)常微分方程数值解的定义 (二)建立数值解法的一些途径 (三)用 MATLAB软件求常微分方程的数值解 返回
求微分方程的数值解 (一)常微分方程数值解的定义 (二)建立数值解法的一些途径 (三)用MATLAB软件求常微分方程的数值解 返 回
数学建模实例 1.目标跟踪问题一:导弹追踪问题 2.目标跟踪问题二:慢跑者与狗 3.地中海鲨鱼问题 返回
1.目标跟踪问题一:导弹追踪问题 2.目标跟踪问题二:慢跑者与狗 3.地中海鲨鱼问题 返 回 数学建模实例
微分方程的解析解 求微分方程(组)解析解的命令:一 dsolve(方程1′,方程2′,灬,方程n′,初始条件’,自变量 记号:在表达微分方程时,用字母D表示求微分,D2、D3等 表示求高阶微分任何D后所跟的字母为因变量,自变量可以指 定或由系统规则选定为缺省 例如,微分方程12 dy=0应表达为:D2y=0 d da 例1求“=1+12的通解 dt 解输入命令: dsolve("Du=1+u^2','t!) 结果:u=tg(t-c) To MATLAB(ff1)
微分方程的解析解 求微分方程(组)解析解的命令: dsolve(‘方程1’ , ‘方程2’ ,…, ‘方程n’ , ‘初始条件’ , ‘自变量’) 结 果:u = tg(t-c) To MATLAB(ff1)
例2求微分方程的特解. dy dy +4-+29y=0 dx y(0)=0,y(0)=15 解输入命令: y= dsolve("D2y+4*Dy+29*y=0!,"Y(0)=0,DY(0)=15,"x To MATLAB(ff2) 结果为:y=3e2sin(5x)
解 输入命令: y=dsolve('D2y+4*Dy+29*y=0' , 'y(0)=0,Dy(0)=15' , 'x') 结 果 为 : y =3e -2xsin(5x) To MATLAB(ff2)
例3求微分方程组的通解 2x-3y+3z 4x-5y+3z dt 4x-4y+2z dt 解输入命令: [x,y,z]=dso1ve(Dx=2*x-3*y+3*z,,); Dy=4*x-5y+3*2!,"Dz=4*x-4*y+2*z x=simple(x) 号将x化简 y=simple(y To MATLAB(fB3) z=simple (z) 结果为:x=(C1-c2+c3+c2e-3-c3e3)e2r y ce-4+c2e2+c2e-3-c3e-3+c1-c2+c3)e 2=(-c1e-4+c2e-44+c1-C2+C3)e2 返回
解 输入命令 : [x,y,z]=dsolve('Dx=2*x-3*y+3*z' , 'Dy=4*x-5*y+3*z' , 'Dz=4*x-4*y+2*z' , 't'); x=simple(x) % 将x化简 y=simple(y) z=simple(z) 结 果 为:x = (c1-c2+c3+c2e -3t-c3e -3t)e 2t y = -c1e -4t+c2e -4t+c2e -3t-c3e -3t+c1-c2+c3)e 2t z = (-c1e -4t+c2e -4t+c1-c2+c3)e 2t To MATLAB(ff3) 返 回
微分方程的数值解 (一)常微分方程数值解的定义 在生产和科研中所处理的微分方程往往很复杂,且大 多得不出一般解.而实际中的对初值问题,一般是要求 得到解在若干个点上满足规定精确度的近似值,或者得 到一个满足精确度要求的便于计算的表达式 因此,研究常微分方程的数值解法是十分必要的 对常微分方程: y=f(x, y) ,其数值解是指由初始点x。开始 的若干离散的x处的值,即对x<x<x2<…<x,求出准确值y(x) y(x2),…,y(xn)的相应近似值y,y2,…,yn 返回
微分方程的数值解 (一)常微分方程数值解的定义 在生产和科研中所处理的微分方程往往很复杂,且大 多得不出一般解.而实际中的对初值问题,一般是要求 得到解在若干个点上满足规定精确度的近似值,或者得 到一个满足精确度要求的便于计算的表达式. 因此,研究常微分方程的数值解法是十分必要的. 0 0 0 0 1 2 1 2 1 2 ' ( , ) ( ) ( ), ( ), , ( ) , , , . n n n y f x y x y x y x x x x x y x y x y x y y y 对常微分方程 : ,其数值解是指由初始点 开始 的若干离散的 处的值,即对 ,求出准确值 的相应近似值 返 回
(二)建立数值解法的一些途径 设x1-x1=h,i=0,1,2,…,n-1,则可用以下离散化方法求解 微分方程 =f(x, y) ly(xo)=y 1.用差商代替导数 若步长h较小,则有 y(x+h)-y(x) h 故有公式: vi=y, +hf(,yi) i=0.12.…n-1 yo=y(xo) 此即欧拉法
(二)建立数值解法的一些途径 1 0 0 , 0,1,2, , 1, ' ( , ) ( ) i i x x h i n y f x y y x y 设 则可用以下离散化方法求解 微分方程 1.用差商代替导数 若步长h较小,则有 h y x h y x y x ( ) ( ) '( ) 故有公式: 1 0 0 ( , ) 0,1,2, , -1 ( ) i i i i y y hf x y i n y y x 此即欧拉法.
2.使用数值积分 对方程y′=fxy),两边由x到xa1积分,并利用梯形公式,有: y(x)-y(x)=f(t,y(o)dt yy[f(x,y(x1)+f(x1+1,y(x+1) 故有公式: y#1=y2+[f(x12y)+f(x1,y+ yo=y(o) 实际应用时,与欧拉公式结合使用: y,+hf(,y,) h y(4)=y+[f(x,y)+f(x1,y)k=0,2, 对于已给的精确度E>0,当满足y出-<E时,取1=", 然后继续下一步y12的计算 此即改进的欧拉法
2.使用数值积分 对方程y’=f(x,y), 两边由xi到xi+1积分,并利用梯形公式,有: 1 1 1 1 1 ( ) ( ) ( , ( )) [ ( , ( )) ( , ( ))] 2 i i x i i x i i i i i i y x y x f t y t d t x x f x y x f x y x 实际应用时,与欧拉公式结合使用: [ ( , ) ( , )] 0,1,2, 2 ( , ) ( ) 1 1 ( 1) 1 (0) 1 f x y f x y k h y y y y hf x y k i i i i i k i i i i i ( 1) ( ) 1 1 1 1 1 2 0 k k k i i i i i y y y y y 对于已给的精确度 ,当满足 时,取 ( ) , 然后继续下一步 的计算. 此即改进的欧拉法. 故有公式: ( ) [ ( , ) ( , )] 2 0 0 1 1 1 y y x f x y f x y h y y i i i i i i