问题的设置

DSolve 给出的第一个变量是微分方程,第二个变量是未知函数,而最后一个变量确认了自变量.

下面是使用 DSolve 求解一阶线性常微分方程的输入. 变量 确认了将来工作中使用的解.
In[1]:=
Click for copyable input
Out[1]=

DSolve 的输出是微分方程的解的列表. 我们要求额外的列表,因为一些方程具有多个解. 这里,由于方程的阶数为1并且是线性的,所以只有一个解:y[x]→+-5 x C[1]. 该解只有一个不确定的常数 C[1],因为没有指定初始条件. 解可以从解的列表中使用部分规范(part specification)提取.

这里提取该解.
In[2]:=
Click for copyable input
Out[2]=

这种形式的解对于寻找 本身很有用,但是对于在一个点上寻找 的导数或者 的值没有用.

这里显示由解给出的 的值.
In[3]:=
Click for copyable input
Out[3]=
该解不应用于 或者 因为该解只是 的一个规则.
In[4]:=
Click for copyable input
Out[4]=
In[5]:=
Click for copyable input
Out[5]=

如果在将来的工作中要使用解,最好使用 而不是 指定未知函数. 这里使用类型为 Function[x, expr] 的纯函数给出解.

这里,未知函数被指定为 . 该解是一个纯函数.
In[6]:=
Click for copyable input
Out[6]=

当解是以纯函数表示时,在特定点,可以找到关于 的导数和 的值的表达式.

这里给出 的表达式.
In[7]:=
Click for copyable input
Out[7]=
In[8]:=
Click for copyable input
Out[8]=
In[9]:=
Click for copyable input
Out[9]=
In[10]:=
Click for copyable input
Out[10]=

当一个问题有多个解时,您可以从列表中选择具体的单个解,或者您可以直接使用列表操作.

这里求解一个非线性一阶方程. 这里有两个解.
In[11]:=
Click for copyable input
Out[11]=
该解可以使用部分规范(part specifications)被提取.
In[12]:=
Click for copyable input
Out[12]=
In[13]:=
Click for copyable input
Out[13]=
这里返回由两个表达式组成的列表.
In[14]:=
Click for copyable input
Out[14]=

若要求解方程组,DSolve 的第一个变量必须是方程列表,而第二个变量必须是未知函数列表.

下面是具有三个未知数的一阶线性方程组的例子. 因为该方程组是线性的,这里只有一个解.
In[15]:=
Click for copyable input
Out[15]=

方程组的每个解是未知函数的替换规则的列表. 未知函数的表达式可以像前面的例子中那样被提取出来.

这里给出未知函数的表达式列表. Simplify 用来以紧凑结构(compact form)返回表达式.
In[16]:=
Click for copyable input
Out[16]=

如果问题的初始条件被指定,一些或者全部待定常量可以被消去.

这里,未知函数及其导数的值在初始点都被指定.
In[17]:=
Click for copyable input
Out[17]=
如果仅仅指定初始值,那么解仍然包含一个任意常量.
In[18]:=
Click for copyable input
Out[18]=

对于一个偏微分方程,DSolve 的第三个变量是方程的自变量列表.

这里求解自变量为 的偏微分方程. C[1] 表示 y + Cos[y[x]] 的一个任意函数.
In[19]:=
Click for copyable input
Out[19]=

一个微分代数方程和常微分方程组使用相同的方式指定.

下面是具有初始条件的微分代数方程的一个例子.
In[20]:=
Click for copyable input
Out[20]=

注意,我们不总是可能给出问题的显式解. 在这种情况下,解使用一个未计算的 Solve 对象或者使用 InverseFunction 给出.

这个方程的解不是明确可得的. 输出表示一个隐式的解.
In[21]:=
Click for copyable input
Out[21]=
该解可以像往常一样使用一个部分规范(part specification)提取出来.
In[22]:=
Click for copyable input
Out[22]=
该方程的解以 InverseFunction 对象给出.
In[23]:=
Click for copyable input
Out[23]=
每个解可以通过以如下方式消去 InverseFunction 对象重写为隐式方程.
In[24]:=
Click for copyable input
Out[24]=
In[25]:=
Click for copyable input
Out[25]=
New to Mathematica? Find your learning path »
Have a question? Ask support »