1、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迭代法实验过程记录(含基本步骤、主要程序清单及异常情况记录等)程序:clearsyms x y y=dsolve(
2、x2-1)*Dy+2*x*y=sin(x),x) 答案:y =-(C2 + cos(x)/(x2 - 1)D2y-2*Dy+5*y=exp(x)*sin(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. 求微分方程组 syms x y tx,y=dsolve(Dx+x+y=0Dy+x-y
3、=0x(0)=1y(0)=0t)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 题中的微分方程初值问题的数值解(近似解),求解区间为先编写函数文件verde
4、rpol.m:function xprime=verderpol(t,x)xprime=-x(1)-x(2); x(2)-x(1);再编写命令文件y0=1;0;t,x = ode45(verderpol,0,2,y0);x1=x(:,1);x2=x(:,2);plot(x1,x2,b-hold ont,x=ode23(plot(x(:,1),x(:,2),r-);两种求解器之间的差异:ode45大部分场合的首选算法ode23使用于精度较低的情形但在此题中并没有体现出差异。程序:f=sym(y+2*x/y2a=0;b=2;h=0.4;n=(b-a)/h+1;x=0;y=1;szj=x,y;for
5、 i=1:n-1y=y+h*subs(f,y,x,y);x=x+h;szj=szj;x,y;endszjplot(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
6、 -33.6812 1.6000 -37.0492 1.7000 -40.7541 1.8000 -44.8294 1.9000 -49.31232.0000 -54.2435图像:y-exp(x)*cos(x)b=3;h=0.1;l1=subs(f,l2=subs(f,x+h/2,y+l1*h/2);l3=subs(f,x+h/2,y+l2*h/2);l4=subs(f,x+h,y+l3*h);y=y+h*(l1+2*l2+2*l3+l4)/6; 0.1000 0.9948 0.2000 0.9787 0.3000 0.9509 0.4000 0.9109 0.5000 0.8583 0.6
7、000 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.
8、5204 2.8000 10.9359 2.9000 13.82603.0000 17.2510图形:实验结果报告与实验总结本实验主要研究微分方程(组)的解析解法(精确解)和微分方程(组)的数值解法(近似解)前两题主要用dslove语句即可运行成功。第3题求解微分方程组也用到了dslove语句,和ezplot画图,有一个疑点一直想不清楚,就是ezplot后面的范围0,1,用不同的取值图形就完全不相同,正确的取值应该如何选取?第4题用 ode23、ode45 求微分方程初值问题的数值解(近似解),用hold on直接就能在图上比较差异。5、6两题直接在原有程序更改步长和区间取值即可。教师评语实验成绩
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1