- 1、本文档共2页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用MATLAB求解微分方程数值解的相关命令
1 指令函数及调用格式
1.1 指令函数:dsolve
注:此指令函数用于求解微分方程(组)的符号(解析)解。
1.2 单变量常微分方程的调用格式:
f=dsolve(‘eq’, ‘cond’, ‘v’)
注:此调用格式用于求符号微分方程的通解或特解,其中eq代表微分方程,cond代表微分方程的初始条件(若缺少,则求微分方程的通解),v为指定自变量(如未指定,系统默认t为自变量)。
1.3 常微分方程组的调用格式:
f=dsolve(‘eq1’, ‘eq2’,…, ‘eqn’, ‘cond1’, ‘cond2’,…, ‘condn’, ‘v1’, ‘v2’, …, ‘vn’)
注:此调用格式用于求解符号常微分方程组。其中eq1,…,eqn代表n个微分方程构成的微分方程组;cond1, …,condn代表微分方程组的初始条件(若缺少,则求微分方程组的通解),v1 , …,vn为指定自变量(如未指定,系统默认t为自变量)。
1.4 记述规定:
MATLAB中,用D(注意:一定是大写)记述微分方程中函数的导数。
当y是因变量时,用‘Dny’表示‘y的n阶导数’。如,Dy表示y的一阶导数y ,Dny表示y的n阶导数。
Dy(0)=5表示y (0)=5。
D3y+D2y+Dy-x+5=0表示微分方程 y+y+y-x+5=0。
2 实例演示
例1、求微分方程的通解
命令输入:
y=dsolve(Dy+2*x*y=2*x*exp(-x^2),x)
得结果为:
y =
(x^2+C1)*exp(-x^2)
若输入命令:
y=dsolve(Dy+2*x*y=2*x*exp(-x^2))
则系统默认t为自变量,而把真正的自变量x当作常数处理,把y当作t的函数,得到错误的结果:
y =
exp(-2*x*t-x*(x-2*t))+exp(-2*x*t)*C1
例2、求微分方程的通解
命令输入:
x=dsolve(4*D2x-20*Dx+25*x=0)
得结果为:
x =
C1*exp(5/2*t)+C2*exp(5/2*t)*t
%系统默认t为自变量
例3、求微分方程在条件下的特解。
命令输入:
y=dsolve(D2y+5*Dy-4*y+10=0,y(0)=6,Dy(0)=4,x)
得结果为:
y =
exp(1/2*(-5+41^(1/2))*x)*(51/164*41^(1/2)+7/4)+exp(-1/2*(5+41^(1/2))*x)*(7/4-51/164*41^(1/2))+5/2
例4、求下述微分方程组的解
命令输入:
[x y]=dsolve(Dx=-3*y, Dy=2*x)
得结果为:
x =
1/2*6^(1/2)*(C1*cos(6^(1/2)*t)-C2*sin(6^(1/2)*t))
y =
C1*sin(6^(1/2)*t)+C2*cos(6^(1/2)*t)
文档评论(0)