- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
word资料下载可编辑
专业技术资料
实验二: 微分方程与差分方程模型Matlab求解
一、实验目的
[1] 掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;
[2] 熟悉MATLAB软件关于微分方程求解的各种命令;
[3] 通过范例学习建立微分方程方面的数学模型以及求解全过程;
[4] 熟悉离散 Logistic模型的求解与混沌的产生过程。
二、实验原理
1. 微分方程模型与MATLAB求解
解析解
用MATLAB命令dsolve(‘eqn1’,’eqn2’, ...) 求常微分方程(组)的解析解。其中
(1) 微分方程
例1 求解一阶微分方程 ???
(1) 求通解
输入:
dsolve(Dy=1+y^2)
输出:
ans =
tan(t+C1)
(2)求特解
输入:
dsolve(Dy=1+y^2,y(0)=1,x)
指定初值为1,自变量为x
输出:
ans =
tan(x+1/4*pi)
例2 求解二阶微分方程
原方程两边都除以,得
输入:
dsolve(D2y+(1/x)*Dy+(1-1/4/x^2)*y=0,y(pi/2)=2,Dy(pi/2)=-2/pi,x)
ans =
- (exp(x*i)*(pi/2)^(1/2)*i)/x^(1/2) + (exp(x*i)*exp(-x*2*i)*(pi/2)^(3/2)*2*i)/(pi*x^(1/2))
试试能不用用simplify函数化简
输入: simplify(ans)
ans =
2^(1/2)*pi^(1/2)/x^(1/2)*sin(x) ?
(2)微分方程组
例3 求解???? df/dx=3f+4g;? dg/dx=-4f
(1)通解:??
[f,g]=dsolve(Df=3*f+4*g,Dg=-4*f+3*g)
f =
exp(3*t)*(C1*sin(4*t)+C2*cos(4*t))
g =
exp(3*t)*(C1*cos(4*t)-C2*sin(4*t))
特解:
[f,g]=dsolve(Df=3*f+4*g,Dg=-4*f+3*g,f(0)=0,g(0)=1)
f =
exp(3*t)*sin(4*t)
g =
exp(3*t)*cos(4*t)
数值解
在微分方程(组)难以获得解析解的情况下,可以用Matlab方便地求出数值解。格式为:
[t,y] = ode23(F,ts,y0,options)
注意:
微分方程的形式:y = F(t, y),t为自变量,y为因变量(可以是多个,如微分方程组);
[t, y]为输出矩阵,分别表示自变量和因变量的取值;
F代表一阶微分方程组的函数名(m文件,必须返回一个列向量,每个元素对应每个方程的右端);
ts的取法有几种,(1)ts=[t0, tf] 表示自变量的取值范围,(2)ts=[t0,t1,t2,…,tf],则输出在指定时刻t0,t1,t2,…,tf处给出,(3)ts=t0:k:tf,则输出在区间[t0,tf]的等分点给出;
y0为初值条件;
options用于设定误差限(缺省是设定相对误差是10^(-3),绝对误差是10^(-6));
ode23是微分方程组数值解的低阶方法,ode45为中阶方法,与ode23类似。
例4 求解一个经典的范得波(Van Der pol)微分方程:
解 形式转化:令。则以上方程转化一阶微分方程组: 。
编写M文件如下,必须是M文件表示微分方程组,并保存,一般地,M文件的名字与函数名相同,保存位置可以为默认的work子目录,也可以保存在自定义文件夹,这时注意要增加搜索路径(File\Set Path\Add Folder)
??? function? dot1=vdpol(t,y);
??? dot1=[y(2); (1-y(1)^2)*y(2)-y(1)];
在命令窗口写如下命令:
[t,y]=ode23(vdpol,[0,20],[1,0]);
y1=y(:,1);y2=y(:,2);
plot(t,y1,t,y2,--);title(Van Der Pol Solution );
xlabel(Time,Second);ylabel(y(1)andy(2))
执行:
注:Van der Pol方程描述具有一个非线性振动项的振动子的运动过程。最初,由于它在非线性电路上的应用而引起广泛兴趣。一般形式为。
图形解
无论是解析解还是数值解,都不如图形解直观明了。即使是在得到了解析解或数值解的情况下,作出解的图形,仍然是一件深受欢迎的事。这些都可以用Matlab方便地进行。
(1)图示解析解
如果微分方程
您可能关注的文档
最近下载
- [逻辑书籍]《万物解释者》.pdf
- 最新施工单位开工前需上报监理资料资料.pdf VIP
- 储罐区风险评估、报告.doc
- 事业单位招考(档案管理)基础知识练习题及答案.pdf
- 美丽中国Wild_China-全集-中英文对照.pdf VIP
- 建设寺庙申请报告.doc
- 中学生古诗文知识考试试题(真题)及答案.docx
- 五官科技术操作规范.doc
- 2022年个人所得税六项专项附加扣除和APP操作指引专题培训辅导PPT课件(包括延续实施全年一次性奖金等优惠政策讲解).ppt
- 【数学学科融合】“数学+”跨学科主题学习教学探索——以《年、月、日的秘密》之“编年历”为例【数学学科融合】“数学+”跨学科主题学习教学探索——以《年、月、日的秘密》之“编年历”为例.docx
文档评论(0)