MATLAB
求解常微分方程的函数是dsolve()。应用此函数可以求得常微分方程(组)的通解,以及给定边界条件(或初始条件)后的特解。
在介绍命令dsolve 的使用方法之前,要注意的是:平时以y ''+ 2y ' = x形式出现的常微
分方程,在MATLAB 中需要重新改写。
命令dsolve 应用的格式如下:
(1) r = dsolve('equ')
(2) r = dsolve('equ', 'v')
(3) r = dsolve('equ’,'cond1,cond2,…','v')
(4) r = dsolve('equ1,equ2,…','v')
(5) r = dsolve('equ1,equ2,…','cond1,cond2,…','v')
说明:
① equ1,equ2,…为给定的常微分方程(组)。
② v 为给定的常微分方程(组)的指定符号自变量,默认变量为t。
③
cond1,cond2,…为给定的常微分方程(组)给定的边界条件(或初始条件)。初始和边界条件由字符串表示:y(a)=b,Dy(c)=d,D2y(e)=f
等等,
④ r 为求符号解(即解析解),若边界条件少于方程(组)的阶数,则返回的结果r 中会出现任意常数C1,C2,…
⑤ 在微分方程(组)的表达式equ 中,大写字母D 表示对自变量(设为x)的微分算子:
D=d/dx,D2=d2/d2x,…微分算子D 后面的字母则表示为因变量,即待求解的未知函数。
⑥ dsolve 命令最多可以接受12 个输入参量(包括方程组与定解条件个数,当然也可以做到输入的方程个数多于12
个,只要将多个方程置于一字符串内即可)。
⑦ 若没有给定输出参量,则在命令窗口显示解列表。
⑧ 若该命令找不到解析解,则返回一警告信息,同时返回一空的sym 对象。这时,用户可以用命令ode23 或ode45
求解方程组的数值解。