如何利用如 Solve 等函数的输出?
Solve 及其他一些函数,如 FindInstance、 NSolve 和 NDSolve ,返回的是一个规则列表。在 Wolfram 语言中,规则将符号与数值相关联。以下式的输出为例:
roots = Solve[x^2 + 4 x - 1 == 0, x]
{{x -> -2 - Sqrt[5]}, {x -> -2 + Sqrt[5]}}
此输出是一个由规则列表组成的列表。每一个子列表代表 x 的一个可能值 。如要查看第一个解的规则形式,运行下列语句:
roots[[1]]
{x -> -2 - Sqrt[5]}
符号是 x
,它的值为 - 2 - Sqrt[5]
。命令 ReplaceAll( /. ) 将根据规则对该符号的每一个实例用值替换。例如,如果我们希望将多项式 x^2 + 4 x - 1
中 x
的所有实例用上面多项式的第一个根替换,可以写作:
x^2 + 4 x - 1 /. roots[[1]]
这将生成一个值为零的表达式。
如果我们希望得到该多项式的第二个根,并将它赋值给一个名为 secondRoot 的新变量, 可以运行下式:
secondRoot = x /. roots[[2]]
欲了解更多相关范例及使用信息,请参阅运用变换规则的相关教程。
对于某些函数(如 NDSolve),存在一个等效的“Value”函数(如 NDSolveValue ),返回的是值或函数,而不是规则。
[English]
1-800-WOLFRAM (+1-217-398-0700 美国境外用户)
客服支持
周一至周五
8am–5pm 美国中部时区
- 产品注册或激活
- 预售信息和订单
- 安装帮助和首次启动
高级技术支持 (面向特定用户)
周一至周四
8am–7pm 美国中部时区
周五
8:30–10am & 11am–5pm 美国中部时区
- 优先技术支持
- Wolfram 专家助理专员
- Wolfram 语言编程帮助
- 高级安装支持