MATLAB 求解常微分方程的函数是dsolve()。应用此函数可以求得常微分方程(组)的通解,以及给定边界条件(或初始条件)后的特解。
S=dsolve(eqn)
S=dsolve(eqn,cond)
S=dsolve(eqn,cond,Name,Value)
eqn1,eqn2,…为给定的常微分方程(组)。
② Value为给定的常微分方程(组)的指定符号自变量,默认变量为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 求解方程组的数值解。