MATHEMATICA 教程

联立方程组

Solve 可以解联立方程组. Solve 可以求一大类联立多项方程组的显式解.

这里是具有两个未知量的简单线性方程.
In[1]:=
Click for copyable input
Out[1]=
这是一个更复杂的例子. 结果是一个解的列表,每个解由变量变换规则的列表构成.
In[2]:=
Click for copyable input
Out[2]=
可以使用带有 算符的解的列表.
In[3]:=
Click for copyable input
Out[3]=
即使当 Solve 不能求出显式解时,它也常常能"展开"联立方程组,使用 Root 对象生成一个符号结果.
In[4]:=
Click for copyable input
Out[4]=
然后可以使用 N 得到数值结果.
In[5]:=
Click for copyable input
Out[5]=

Solve 中使用的变量不必是单个符号. 通常当建立大的联立方程组时,可以使用如 这样的表达式作为变量.

这里是关于 a[i] 的三个方程的列表.
In[6]:=
Click for copyable input
Out[6]=
这里关于某些 a[i] 求解.
In[7]:=
Click for copyable input
Out[7]=
Solve[eqns,{x1,x2,...}]关于特定的对象 求解 eqns
Solve[eqns]关于 eqns 中的所有对象求解 eqns

求解联立方程组.

如果不明显地指出要求解的对象,Solve 将对所有变量求解.
In[8]:=
Click for copyable input
Out[8]=
Solve[{lhs1==rhs1,lhs2==rhs2,...},vars]
Solve[lhs1==rhs1&&lhs2==rhs2&&...,vars]
Solve[{lhs1,lhs2,...}=={rhs1,rhs2,...},vars]

Solve 提供联立方程组的几种方法.

当使用矩阵构造联立方程组时,得到的是表达式的列表之间的等式.
In[9]:=
Click for copyable input
Out[9]=
Solve 将包含列表的方程转换为方程的列表.
In[10]:=
Click for copyable input
Out[10]=
可以使用 LogicalExpand 直接做转换.
In[11]:=
Click for copyable input
Out[11]=

在某些类型的计算中,可以方便地使用系数数组而非显式方程. 用户可以使用 CoefficientArrays 从方程构造数组.

New to Mathematica? Find your learning path »
Have a question? Ask support »