2023年matlab求微分方程的解实验报告四
《2023年matlab求微分方程的解实验报告四》由会员分享,可在线阅读,更多相关《2023年matlab求微分方程的解实验报告四(13页珍藏版)》请在装配图网上搜索。
1、matlab与数学实验实验报告实验序号: 实验四 日期: 2023年 5 月 25 日班级 姓名 彭婉婷学号 实验名称 求微分方程的解 问题背景描述实际应用问题通过数学建模所归纳而得到的方程,绝大多数都是微分方程,另一方面,可以求解的微分方程也是十分有限的,特别是高阶方程和偏微分方程(组)这就规定我们既要研究微分方程(组)的解析解法(精确解),更要研究微分方程(组)的数值解法(近似解)实验目的本实验将重要研究微分方程(组)的数值解法(近似解),重点介绍 Euler 折线法实验原理与数学模型MATLAB7.11.0重要内容(要点)1. 求微分方程的通解2. 求微分方程的通解3. 求微分方程组 在
2、初始条件下的特解,并画出解函数的图形 4. 分别用 ode23、ode45 求上述第 3 题中的微分方程初值问题的数值解(近似解),求解区间为运用画图来比较两种求解器之间的差异5. 用 Euler 折线法求解微分方程初值问题的数值解(步长h取0.1),求解范围为区间0,2选做:6. 用四阶 Runge-Kutta 法求解微分方程初值问题的数值解(步长h取0.1),求解范围为区间0,3迭代法实验过程记录(含基本环节、重要程序清单及异常情况记录等)1. 求微分方程的通解程序:clearsyms x y y=dsolve(x2-1)*Dy+2*x*y=sin(x),x) 答案:y =-(C2 + c
3、os(x)/(x2 - 1)2. 求微分方程的通解程序:clearsyms 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. 求微分方程组 在初始条件下的特解,并画出解函数的图形程序:clearsym
4、s x y tx,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
5、 题中的微分方程初值问题的数值解(近似解),求解区间为运用画图来比较两种求解器之间的差异先编写函数文献verderpol.m:clearfunction xprime=verderpol(t,x)xprime=-x(1)-x(2); x(2)-x(1);再编写命令文献cleary0=1;0;t,x = ode45(verderpol,0,2,y0);x1=x(:,1);x2=x(:,2);plot(x1,x2,b-)hold ony0=1;0;t,x=ode23(verderpol,0,2,y0);x1=x(:,1);x2=x(:,2);plot(x(:,1),x(:,2),r-);图形:两种
6、求解器之间的差异:ode45大部分场合的首选算法ode23使用于精度较低的情形但在此题中并没有体现出差异。5. 用 Euler 折线法求解微分方程初值问题的数值解(步长h取0.1),求解范围为区间0,2程序:clearf=sym(y+2*x/y2);a=0;b=2;h=0.4;n=(b-a)/h+1;x=0;y=1;szj=x,y;for i=1:n-1y=y+h*subs(f,x,y,x,y);x=x+h;szj=szj;x,y;endszjplot(szj(:,1),szj(:,2)答案:szj = 0 1.0000 0.1000 1.1000 0.2023 1.2023 0.3000 1
7、.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.2023 -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.31232.0000 -54.2435图像:6. 用四阶 Runge-Kutta 法求解微分方程初值问题的数值解(步长
8、h取0.1),求解范围为区间0,3迭代法程序:clearf=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-1l1=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;endszjplot(szj(:,1),szj(:,2)答案:szj = 0 1.0000 0.
9、1000 0.9948 0.2023 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.2023 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.2023 1
10、.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.82603.0000 17.2510图形:实验结果报告与实验总结本实验重要研究微分方程(组)的解析解法(精确解)和微分方程(组)的数值解法(近似解)前两题重要用dslove语句即可运营成功。第3题求解微分方程组也用到了dslove语句,和ezplot画图,有一个疑点一直想不清楚,就是ezplot后面的范围0,1,用不同的取值图形就完全不相同,对的的取值应当如何选取?第4题用 ode23、ode45 求微分方程初值问题的数值解(近似解),用hold on直接就能在图上比较差异。5、6两题直接在原有程序更改步长和区间取值即可。教师评语实验成绩
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。