(数学模型 微分方程
微 分 方 程
数学模型 实验目的 1、学会用 Matlab求简单微分方程的解析解. 2、学会用 Matlab求微分方程的数值解. 实验内容 1、求简单微分方程的解析解 2、求微分方程的数值解 3、数学建模实例 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后所跟的字母为因变量,自变量可以指 定或由系统规则选定为确省 例如,微分方程,=0应表达为:D2y=0 例1求 1+u2的通解 解输入命令: dsolve(Du=1+u^2,t) 结果:u=tg(t-c) To Matlab(ff1)
微分方程的解析解 求微分方程(组)的解析解命令: dsolve(‘方程1’ , ‘方程2’ ,…‘方程n’ , ‘初始条件’ , ‘自变量’) 记号: 在表达微分方程时,用字母 D 表示求微分,D2、D3 等 表示求高阶微分.任何 D 后所跟的字母为因变量,自变量可以指 定或由系统规则选定为确省. 例如,微分方程 0 2 2 dx d y 应表达为:D2y=0. 例 1 求 2 1 u dt du 的通解. 解 输入命令:dsolve('Du=1+u^2' , 't') 结 果:u = tg(t-c) To Matlab(ff1)
(数学模型 例2求微分方程的特解 +4+29 少y=0 dx y(0)=0,y(0)=15 解输入命令:y= dsolve(D2y+4*Dy+29*y=0y(0)=0,Dy(0=15,x) To Matlab(ff2) 结果为:y=3esin(5x)
例 2 求微分方程的特解. (0) 0, '(0) 15 4 29 0 2 2 y y y dx dy dx d y 解 输入命令: y=dsolve('D2y+4*Dy+29*y=0' , 'y(0)=0,Dy(0)=15' , 'x') 结 果 为 : y =3e -2xsin(5x) To Matlab(ff2)
例3求微分方程组的通解 (数学模型 d 2x-3y+3 4x-5y+3z dz 4x-4y+2z 解输入命令: [x,y,2]= 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) To Matlab(ff3) z=Simple(z) 结果为:x=(c1-c2+c3+c2e3t-c3e3)e2 y=-Ce-4t+c2e-4t+C2e-3t-C3e-3t+C1-C2+C3)e2t z=(-C1e-4t+C2e-4t+CJ-C2+c3)e 返回
例 3 求微分方程组的通解. x y z dt dz x y z dt dy x y z dt dx 4 4 2 4 5 3 2 3 3 解 输入命令 : [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=fxy),其数值解是指由初始点x0开始 的若干离散的x值处,即对x<x1<x2<…<xn求出准确值y(x1) y(x2)…y(x)的相应近似值y1,y2…,yn 返回
微分方程的数值解 (一)常微分方程数值解的定义 在生产和科研中所处理的微分方程往往很复杂且大多 得不出一般解。而在实际上对初值问题,一般是要求得 到解在若干个点上满足规定精确度的近似值,或者得到 一个满足精确度要求的便于计算的表达式。 因此,研究常微分方程的数值解法是十分必要的。 的相应近似值 。 的若干离散的 值处,即对 ,求出准确值 对常微分方程: ,其数值解是指由初始点 开始 n n n y x y x y y x x x x x y ( ), , ( ) y , , , y(x ), x y(x ) y' f(x, y) 2 1 2 0 1 2 1 0 0 0 返 回
(数学模型 (二)建立数值解法的一些途径 设x1-x1=h,i=0,1,2,…n-1,可用以下离散化方法求解微分方程: y=f(x,y) y(X 1、用差商代替导数 若步长h较小,则有 y()≈Y(x+b)-y(x) 故有公式: y#1=y1+hf(x1,y1) i=0.1.2.…n-1 此即欧拉法
(二)建立数值解法的一些途径 0 0 i 1 y(x ) y' f(x, y) x , 0,1,2, 1, y 设 xi h i n 可用以下离散化方法求解微分方程: 1、用差商代替导数 若步长h较小,则有 h y x h y x y x ( ) ( ) '( ) 故有公式: i 0,1,2, ,n -1 ( ) ( , ) 0 0 1 y y x y y hf x y i i i i 此即欧拉法
(数学模型 2、使用数值积分 对方程y=f(xy),两边由x到x积分,并利用梯形公式,有: (x1)-y(x1)="f(,y()≈ 2[f(x1,y(x,)+f(x1,y(x+ 故有公式: 1=y+=[f(x1,y1)+f(x+1,y+1) Vo=y(x 实际应用时,与欧拉公式结合使用: LyQ=y +hf(x,y, )=y2+[f(x1,y1)+f(x1y)k=02,… 对于已给的精确度6,当满足y-y出<E时,取y1=y, 然后继续下一步y12的计算 此即改进的欧拉法
2、使用数值积分 对方程y’=f(x,y), 两边由xi到xi+1积分,并利用梯形公式,有: [ ( , ( )) ( , ( ))] 2 ( ) ( ) ( , ( )) 1 1 1 1 1 i i i i i i x x i i f x y x f x y x x x y x y x f t y t dt i i 实际应用时,与欧拉公式结合使用: [ ( , ) ( , )] 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 然后继续下一步 的计算。 对于已给的精确度 ,当满足 时,取 ( ) , y y i 2 1 i 1 1 ( ) 1 ( 1) 1 k i k i k i 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