Solve

Solve[expr, vars]
试图求解以 vars 为变量的方程组或不等式组 expr.

Solve[expr, vars, dom]
在定义域 dom 上求解. dom 的常用选择为 RealsIntegersComplexes.

更多信息更多信息

  • expr 可以为下述形式的任意逻辑组合:
  • lhs==rhs方程
    lhs!=rhs不等方程
    不等式
    exprdom定义域说明
    ForAll[x,cond,expr]全称量词
    Exists[x,cond,expr]存在量词
  • Solve[{expr1, expr2, ...}, vars] 等价于 Solve[expr1&&expr2&&..., vars].
  • 可以指定一个单变量或一个变量列表.
  • Solve 以形如 的规则形式给出解.
  • 当存在多个变量时,解以规则列表的形式给出:.
  • 当存在多个解时,Solve 给出解的列表.
  • 当指定了一个单变量且一个方程的一个特定根具有大于1的重数时,Solve 给出对应解的多个复件.
  • Solve[expr, vars] 缺省假设以代数形式出现在不等式中的量为实数,而其它所有量为复数.
  • Solve[expr, vars, dom] 将所有变量和参数限定在定义域 dom 内.
  • 如果 domReals,或是它的一个子集,例如 IntegersRationals,则所有常数和函数值也被限定为实数.
  • Solve[expr&&varsReals, vars, Complexes] 求解得到的是变量的实数值,但函数值可以为复数.
  • Solve[expr, vars, Integers] 在整数域上求解丢番图方程.
  • expr 中既不含 、也不含其它代数变量的代数变量被视为独立参数.
  • Solve 处理的主要是线性和多项式方程.
  • expr 仅涉及实数或复数域上的多项式方程和不等式时,Solve 原则上可以直接求解所有的 .
  • expr 涉及到超越条件或整数定义域时,Solve 往往将在结果中引入额外参数.
  • Solve 可以对整数域上所有线性方程和不等式的解进行显式表示,并且可以求解文献中列出的大部分丢番图方程.
  • expr 仅涉及实数或复数域上的多项式条件时,Solve[expr, vars] 将恒能进行量词消去.
  • 可以给出以下选项:
  • CubicsFalse是否使用显式根式求解所有三次曲线
    GeneratedParametersC如何对生成的参数进行命名
    InverseFunctionsAutomatic是否使用符号式反函数
    MaxExtraConditions0在连续参数上所允许的额外等式条件数
    MethodAutomatic应该使用何种方法
    Modulus0为整数假定的模数
    QuarticsFalse是否使用显式根式求解所有四次曲线
    VerifySolutionsAutomatic是否验证由非等价变换获得的解
    WorkingPrecisionInfinity计算中所用精度
  • Solve 仅给出通解. 仅当连续参数满足方程时才有效的解被去除. 在一定条件下才有效的其它解作为ConditionalExpression 对象表示.
  • ConditionalExpression 解所包含的条件可以涉及不等式、Element 陈述、非连续参数的等式与不等式,以及具有全维解的方程. 关于连续参数及变量的不等式与 NotElement 条件被舍掉.
  • MaxExtraConditions->Automatic 时,仅包含使连续参数的等式条件数最少的解.
  • MaxExtraConditions->All 时,将给出需要参数的任意条件的解,并且所有条件被包括.
  • MaxExtraConditions->k 时,仅包含使连续参数的等式条件数至多为 k 的解.
  • Solve 使用非等价变换求解超越方程,因此有些解可能得不到,并且可能无法对得到的解的有效性建立确切的条件.
  • Method->Reduce 时,Solve 仅采用等价变换,并且得到所有解.
  • 如果方程无解,Solve 返回 .
  • 如果解集为全维,Solve 返回 .
  • Solve[eqns, ..., Modulus→m] 在以 m 为模的整数域上求解方程. 当 Modulus->Automatic 时,Solve 将力图找到使方程具有解的最大模数.
  • Solve 使用特殊的高效技术来处理具有近似数值系数的离散化线性方程组.

范例范例打开所有单元关闭所有单元

基本范例 (6)基本范例 (6)

求解一个二次方程:

In[1]:=
Click for copyable input
Out[1]=

求解关于 的联立方程组:

In[1]:=
Click for copyable input
Out[1]=

以置换列表形式给出解:

In[1]:=
Click for copyable input
Out[1]=

用解置换

In[2]:=
Click for copyable input
Out[2]=

用解置换 的组合,并化简结果:

In[3]:=
Click for copyable input
Out[3]=

绘制 的解的实部,作为参数 的一个函数:

In[4]:=
Click for copyable input
Out[4]=

选择第3个解:

In[1]:=
Click for copyable input
Out[1]=
In[2]:=
Click for copyable input
Out[2]=

在实数域上求解方程:

In[1]:=
Click for copyable input
Out[1]=

用解置换 ,并化简结果:

In[2]:=
Click for copyable input
Out[2]=

在正整数域上求解方程:

In[1]:=
Click for copyable input
Out[1]=

列出前10个解:

In[2]:=
Click for copyable input
Out[2]=
版本 8 的新功能
New to Mathematica? Find your learning path »
Have a question? Ask support »