常微分方程符号解 、样条函数求积分、微分方程的数值解
MATLAB常微分方程符号解的语法是:
dsolve(‘equation’,‘condition’)
其中,equation代表常微分方程式即y’ = g(x,y),且须以Dy代表一阶微分项y’,D2y代表二阶微分项y’',condition则为初始条件。
函数dsolve用来解符号常微分方程、方程组,如果没有初始条件,则求出通解,如果有初始条件,则求出特解。
dsolve的调用格式如下:
(1)dsolve(‘equation’) %给出微分方程的解析解,表示为t的函数;
(2)dsolve(‘equation’, ‘condition’) %给出微分方程初值问题的解,表示为t的函数;
(3)dsolve(‘equation’, ‘v’) %给出微分方程的解析解,表示为v的函数;
(4)dsolve(‘equation’, ‘condition’, ‘v’) %给出微分方程初值问题的解,表示为v的函数。
样条函数求积分
MATLAB中的样条工具箱中提供了求样条函数的积分的函数fnint。函数fnint的常见用法如下:
q=fnint(Y)
它表示求取样条函数Y的积分。
在用函数fnint求积分之前,必须用样条工具箱中的函数csape对被积分函数进行样条插值拟合。
微分方程的数值解
求解微积分方程你的数值解常用的MATLAB函数调用如下:
[t, x] = ode23(‘xprime’, t0, tf, x0, tol, trace)
[t, x] = ode45(‘xprime’, t0, tf, x0, tol, trace)
或
[t, x] = ode23(‘xprime’, [t0, tf], x0, tol, trace)
[t, x] = ode45(‘xprime’, [t0, tf], x0, tol, trace)
说明:
(1)两个指令的调用格式相同,均为Runge-Kutta法。
(2)该指令是针对一阶常微分设计的。因此,假如待解的是高阶微分方程,那么它必修先演化为形如 的一阶微分方程组,即“状
07-09
4062
