Wolfram Language Fast Introduction for Math Students
开始使用 »

微分方程

Wolfram 语言可以求解常微分方程、偏微分方程和时滞微分方程 (ODE、PDE 和 DDE).

DSolveValue 接受微分方程并返回通解:

C[1] 表示积分常数.)
In[1]:=
Click for copyable input
sol = DSolveValue[y'[x] + y[x] == x, y[x], x]
Out[1]=

/. 替换常数:

In[2]:=
Click for copyable input
sol /. C[1] -> 1
Out[2]=

或为特解加上条件:

In[3]:=
Click for copyable input
DSolveValue[{y'[x] + y[x] == x, y[0] == -1}, y[x], x]
Out[3]=

NDSolveValue 可求出数值解:

In[1]:=
Click for copyable input
NDSolveValue[{y'[x] == Cos[x^2], y[0] == 0}, y[x], {x, -5, 5}]
Out[1]=

可直接绘制 InterpolatingFunction

In[2]:=
Click for copyable input
Plot[%, {x, -5, 5}]
Out[2]=

如果想要求解微分方程组,把所有方程和条件都放在列表中:

(注意:换行符没有任何影响.)
In[1]:=
Click for copyable input
{xsol, ysol} = NDSolveValue[
  {x'[t] == -y[t] - x[t]^2,
   y'[t] == 2 x[t] - y[t]^3,
   x[0] == y[0] == 1},
  {x, y}, {t, 20}]
Out[1]=

用参数图可视化解:

In[2]:=
Click for copyable input
ParametricPlot[{xsol[t], ysol[t]}, {t, 0, 20}]
Out[2]=

快速参考:微分方程 »