代数计算
可以使用“算术”中列出的运算符键入任意代数表达式. 可以用空格来表示乘法. 注意不要忘记 xy 中的空格. 如果输入的 xy 不带空格,则 Wolfram 语言会将其解释为名称为 xy 的一个符号,而不是两个符号 x 和 y 的乘积.
函数 Expand 计算乘积和幂:
输入更复杂的表达式时,将括号放在正确的位置非常重要. 因此,例如,必须以 x^(4y) 的形式给出表达式 . 如果省略括号,则会得到 . 放入太多括号永远不会有什么坏处,如果你想了解何时需要使用括号,请查看“运算符的输入形式”.
Factor 恢复原有形式:
用 Expand 很容易生成复杂的表达式:
Factor 通常给出更简单的表达式:
但是,在某些情况下,Factor 给出更复杂的表达式:
Simplify[expr] | 通过应用各种标准代数变换来找到 expr 的最简单形式 |
FullSimplify[expr] | 通过应用各种变换来找到最简单的形式 |
Simplify 将 改写为因式形式:
Simplify 保留 的扩展形式,因为对于该表达式来说,因式形式更庞大:
这里是 的积分. 可在“积分”中查看更多关于积分的讨论:
对 Integrate 的结果求导,应给出原来的表达式. 此处,得到的是更复杂版本的表达式,这种情况很常见:
Simplify 成功地给出了原来简单形式的表达式:
Simplify 被设计为在给定的表达式上尝试各种标准的代数转换. 但是,有时可能需要更复杂的转换才能找出最简单的表达式.
FullSimplify 尝试进行更大范围的转换,不仅涉及代数函数,还涉及许多其他类型的函数.
Simplify 对此表达式不执行任何操作:
FullSimplify 则将其转换为更简单的形式:
对于比较小的表达式,FullSimplify 通常会成功地将表达式明显简化. 但是对于较大的表达式,它可能变得非常慢.
原因就在于,为了完成简化,FullSimplify 必须有效地尝试将表达式的每个部分彼此组合起来,而对于大型表达式,所需要考虑的情况简直要达到天文数字.
但是,在更复杂的计算中,即使是 Simplify(更不用说 FullSimplify)也可能最终需要尝试大量不同的形式,因此要花费很长时间. 在这种情况下,通常需要进行更多的受控简化,并利用对想要的形式的知识来指导化简进程.
Expand[expr] | 展开乘积和幂 |
ExpandAll[expr] | 所有地方都应用 Expand |
Factor[expr] | 约简为因子的乘积 |
Together[expr] | 将所有项放在公分母上 |
Apart[expr] | 分成具有简化分母的项 |
Cancel[expr] | 约去分子和分母的公因子 |
Simplify[expr] | 尝试一系列代数转换,给出找到的 expr 的最简形式 |
Expand 将分子展开,但分母保留因式形式:
ExpandAll 展开所有的项,包括分母:
Together 将所有的项置于公分母上:
Apart 将表达式分成具有简单分母的单独的项:
Factor 对所有项进行因式分解,此处重新给出原来的形式:
根据 Simplify,这是原始表达式最简单的形式:
Collect[expr,x] | 将 x 的幂合并在一起 |
FactorTerms[expr,x] | 提取与 x 无关的因式 |
如上所示,即使只局限于多项式和有理表达式,任何特定表达式都可被写成许多不同的形式. 如果考虑更复杂的表达式,例如涉及高等数学函数的表达式,则可能的形式变得更加多样化. 因此,在 Wolfram 语言中内置特定函数来生成每种可能的形式是完全不可行的. 相反,Wolfram 语言允许你构建任意转换规则的组合,以便在不同形式之间进行转换. 许多 Wolfram 语言软件包都包含此类规则;“转换规则和定义”中提供了有关如何自行构建规则的详细信息
TrigExpand[expr] | 将三角函数表达式展开为各项的和 |
TrigFactor[expr] | 将三角函数表达式分解为各项的积 |
TrigReduce[expr] | 用倍角约简三角函数表达式 |
TrigToExp[expr] | 将三角函数转换为指数形式 |
ExpToTrig[expr] | 将指数转换为三角函数 |
FunctionExpand[expr] | 展开特殊函数和其他函数 |
ComplexExpand[expr] | 假定所有变量为实数进行展开 |
PowerExpand[expr] | 将 (xy)p 转换为 xpyp 等 |
无论表达式中的符号变量可能具有什么值,由 Expand 和 Factor 等函数对表达式进行的转换始终是正确的. 但是,有时,希望执行仅对符号变量某些可能的值正确的转换. PowerExpand 可执行其中一种这样的转换.
PowerExpand 可进行展开:
Simplify[expr,assum] | 有假设条件的情况下化简 expr |
Element[x,dom] | 指明 x 是域 dom 中的元素 |
Element[{x1,x2,…},dom] | 指明所有的 xi 都是域 dom 中的元素 |
Reals | 实数 |
Integers | 整数 |
Primes | 质数 |
Coefficient[expr,form] | expr 中形为 form 的项的系数 |
Exponent[expr,form] | expr 中形为 form 的项的最高次幂 |
Part[expr,n] or expr[[n]] | expr 中的第 n 项 |
你可能会注意到,用于提取和的第 n 项的函数 Part[expr,n] 与“处理列表中的元素”中所述的用于提取列表中的元素的函数相同. 这不是巧合. 实际上,如“像处理列表一样处理表达式”中所讨论的那样,在结构上可以像处理列表一样处理每个 Wolfram 语言表达式. 但是,如“像处理列表一样处理表达式”中所述,要小心,因为 Wolfram 语言经常以与内部处理形式不同的形式显示代数表达式.
Coefficient 甚至适用于未显式展开的多项式:
Numerator[expr] | expr 的分子 |
Denominator[expr] | expr 的分母 |
Denominator 提取出分母:
显示更少和显示更多按钮可以减少或增加 Wolfram 系统显示表达式的详细程度. 显示全部按钮可去除界面,显示完整的结果,但要花费相当长的时间. 可通过设定大小限制选项设置这项功能开始起作用的阈值,点击后将打开偏好设置对话框,显示具有适当设置的面板.