《matlab与数学实验》实验
报告
软件系统测试报告下载sgs报告如何下载关于路面塌陷情况报告535n,sgs报告怎么下载竣工报告下载
实验序号: 实验四 日期: 2015年 5 月 25 日
班级
132132002
姓名
彭婉婷
学号
1321320057
实验名称
求微分方程的解
问题背景描述
实际应用问题通过数学建模所归纳而得到的方程,绝大多数都是微分方程,另一方面,能够求解的微分方程也是十分有限的,特别是高阶方程和偏微分方程(组).这就要求我们既要研究微分方程(组)的解析解法(精确解),更要研究微分方程(组)的数值解法(近似解).
实验目的
本实验将主要研究微分方程(组)的数值解法(近似解),重点介绍 Euler 折线法.
实验原理与数学模型
MATLAB7.11.0
主要内容(要点)
1. 求微分方程
的通解.
2. 求微分方程
的通解.
3. 求微分方程组
在初始条件
下的特解,并画出解函数
的图形.
4. 分别用 ode23、ode45 求上述第 3 题中的微分方程初值问题的数值解(近似解),求解区间为
.利用画图来比较两种求解器之间的差异.
5. 用 Euler 折线法求解微分方程初值问题
的数值解(步长h取0.1),求解范围为区间[0,2].
选做:
6. 用四阶 Runge-Kutta 法求解微分方程初值问题
的数值解(步长h取0.1),求解范围为区间[0,3].迭代法
实验过程记录(含基本步骤、主要程序
清单
安全隐患排查清单下载最新工程量清单计量规则下载程序清单下载家私清单下载送货清单下载
及异常情况记录等)
1. 求微分方程
的通解.
程序:
clear
syms x y
y=dsolve('(x^2-1)*Dy+2*x*y=sin(x)','x')
答案
八年级地理上册填图题岩土工程勘察试题省略号的作用及举例应急救援安全知识车间5s试题及答案
:y =-(C2 + cos(x))/(x^2 - 1)
2. 求微分方程
的通解.
程序:
clear
syms x y
y=dsolve('D2y-2*Dy+5*y=exp(x)*sin(x)','x')
simplyify(x/y)weijiao
答案:
y =(exp(x)*sin(x))/6 - (sin(3*x)*exp(x))/8 + (sin(5*x)*exp(x))/24 + C4*cos(2*x)*exp(x) + sin(2*x)*exp(x)*(cos(x)/4 - cos(3*x)/12 + 1/6) + C5*sin(2*x)*exp(x)
3. 求微分方程组
在初始条件
下的特解,并画出解函数
的图形.
程序:
clear
syms x y t
[x,y]=dsolve('Dx+x+y=0','Dy+x-y=0','x(0)=1','y(0)=0','t')
ezplot(x,y,[0, 1])(t的取值,t是与x,y相关的,如果不给范围,则会默认为一个较大的区间)
simplify(x)
simplify(y)
答案:
x =exp(2^(1/2)*t)/2 + 1/(2*exp(2^(1/2)*t)) - (2^(1/2)*exp(2^(1/2)*t))/4 + 2^(1/2)/(4*exp(2^(1/2)*t))
y =2^(1/2)/(4*exp(2^(1/2)*t)) - (2^(1/2)*exp(2^(1/2)*t))/4
图形:
4. 分别用 ode23、ode45 求上述第 3 题中的微分方程初值问题的数值解(近似解),求解区间为
.利用画图来比较两种求解器之间的差异.
先编写函数文件verderpol.m:
clear
function xprime=verderpol(t,x)
xprime=[-x(1)-x(2); x(2)-x(1)];
再编写命令文件
clear
y0=[1;0];
[t,x] = ode45('verderpol',[0,2],y0);
x1=x(:,1);x2=x(:,2);
plot(x1,x2,'b-')
hold on
y0=[1;0];
[t,x]=ode23('verderpol',[0,2],y0);
x1=x(:,1);x2=x(:,2);
plot(x(:,1),x(:,2),'r-');
图形:
两种求解器之间的差异:
ode45大部分场合的首选算法
ode23使用于精度较低的情形
但在此题中并没有体现出差异。
5. 用 Euler 折线法求解微分方程初值问题
的数值解(步长h取0.1),求解范围为区间[0,2].
程序:clear
f=sym('y+2*x/y^2');
a=0;
b=2;
h=0.4;
n=(b-a)/h+1;
x=0;
y=1;
szj=[x,y];
for i=1:n-1
y=y+h*subs(f,{'x','y'},{x,y});
x=x+h;
szj=[szj;x,y];
end
szj
plot(szj(:,1),szj(:,2))
答案:szj =
0 1.0000
0.1000 1.1000
0.2000 1.2010
0.3000 1.2934
0.4000 1.3728
0.5000 1.4359
0.6000 1.4781
0.7000 1.4921
0.8000 1.4644
0.9000 1.3662
1.0000 1.1217
1.1000 0.3836
1.2000 -25.3054
1.3000 -27.8358
1.4000 -30.6193
1.5000 -33.6812
1.6000 -37.0492
1.7000 -40.7541
1.8000 -44.8294
1.9000 -49.3123
2.0000 -54.2435
图像:
6. 用四阶 Runge-Kutta 法求解微分方程初值问题
的数值解(步长h取0.1),求解范围为区间[0,3].迭代法
程序:
clear
f=sym('y-exp(x)*cos(x)');
a=0;
b=3;
h=0.1;
n=(b-a)/h+1;
x=0;
y=1;
szj=[x,y];
for i=1:n-1
l1=subs(f,{'x','y'},{x,y});
l2=subs(f,{'x','y'},{x+h/2,y+l1*h/2});
l3=subs(f,{'x','y'},{x+h/2,y+l2*h/2});
l4=subs(f,{'x','y'},{x+h,y+l3*h});
y=y+h*(l1+2*l2+2*l3+l4)/6;
x=x+h;
szj=[szj;x,y];
end
szj
plot(szj(:,1),szj(:,2))
答案:szj =
0 1.0000
0.1000 0.9948
0.2000 0.9787
0.3000 0.9509
0.4000 0.9109
0.5000 0.8583
0.6000 0.7933
0.7000 0.7165
0.8000 0.6290
0.9000 0.5329
1.0000 0.4309
1.1000 0.3268
1.2000 0.2256
1.3000 0.1337
1.4000 0.0590
1.5000 0.0112
1.6000 0.0021
1.7000 0.0456
1.8000 0.1582
1.9000 0.3590
2.0000 0.6702
2.1000 1.1171
2.2000 1.7283
2.3000 2.5364
2.4000 3.5774
2.5000 4.8916
2.6000 6.5231
2.7000 8.5204
2.8000 10.9359
2.9000 13.8260
3.0000 17.2510
图形:
实验结果报告与实验
总结
初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf
本实验主要研究微分方程(组)的解析解法(精确解)和微分方程(组)的数值解法(近似解).
前两题主要用dslove语句即可运行成功。
第3题求解微分方程组也用到了dslove语句,和ezplot画图,有一个疑点一直想不清楚,就是ezplot后面的范围[0,1],用不同的取值图形就完全不相同,正确的取值应该如何选取?
第4题用 ode23、ode45 求微分方程初值问题的数值解(近似解),用hold on直接就能在图上比较差异。5、6两题直接在原有程序更改步长和区间取值即可。
教师评语
实验成绩