实验3 Matlab求解微分方程
实验报告(3) 学生姓名 学号 指导老师 实验时间 地点
实验
目 用matlab求解微分方程(组)
实
验, 掌握用matlab求微分方程和微分方程组的解析解 目, 掌握用matlab求微分方程和微分方程组的数值解 的
实di,di,,si,0.3i验,ri(1i),,dt,,内dtds,,已知方程(组)1) 2) ,,si容 ,dt,,i(0)i,0,i(0),0.02,s(0),0.98,
,,
1、利用matlab求方程1)和方程组的解析解
2、利用matlab求解方程组2)的数值解,并作出教材P140图7。
实要求解微分方程(组)dy/dt=f(t,y),可如下调用: 验[T,Y]=ode45(f,[t0,tn],y0) 指1. 函数在求解区间[t0,tn]内,自动设立采样点向量T,并求出解函数y在采样点T处
导 的样本值Y。
2. f是一个函数,要有两个参数,第一个参数是自变量t,第二个参数是因变量y。
3. y0=y(t0)给定方程的初值。
4.
例: 求解常微分方程组初值问题在区间[0,2]中的解。
dy,,,,yy ,(0)521,,dx ,dy2,, ,,,,,,xyxy5(0)622,dx,
方法一:建立一个函数文件 fxy2.m:
function f=fxy2(x,y)
f(1)=y(2);
f(2)=-x.*y(2)+x.^2-5;
f=f';
在MATLAB命令窗口,输入命令:
[X,Y]=ode45('fxy2',[0,2],[5,6])
方法二:
dy=@(x,y)([y(2); -x*y(2)+x^2-5]);
[x,y]=ode45(dy,[0,2],[5,6])
实 验 结
果
与
分
析