【问题标题】:Collect the common term in mathematica收集数学中的常用术语
【发布时间】:2012-10-02 16:10:51
【问题描述】:

我有一个复杂的x1、x2、x3、...、x10表达式。 它们包括 4 种操作(+、-、*、/)和平方根

我想收集每个变量的常用术语。

例如我有

F = x1 + 2*x2 + 5x3 -Sqrt(x4 + x5) + x7 +...长而复杂的东西

我想改成下面的形式:

F = A*x1 + B*x2 + C*x3 + D*x4 +...+(某物)*xn

如果在mathematica中有任何方法可以做到这一点,请帮忙?

【问题讨论】:

  • Hong,你最好在最近从 SO 跨越的mathematica.stackexchange.com 上问这个问题。
  • 在帮助中检查Collect[]
  • 根本没有办法做到这一点.. sqrt 中的数量必须保持在那里。您能否提供输入和预期输出的完整示例?

标签: math wolfram-mathematica mathematical-optimization


【解决方案1】:

尝试使用 CoefficientList,然后使用 Total 和 Table。像这样的:

cef = CoefficientList[a + b x + c x + Sin[c] x^2 + x^2 + x^3, x]; Total[Table[cef[[i]] x^i, {i, 1, 4}]]

还可以尝试使用即使使用 sqrt(x) 也应该工作的 Collect[]。但是,如果你有像 Sqrt(x4 + x5) 这样的东西,我真的认为你不能把它拆开,对吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-26
    • 2013-12-03
    • 1970-01-01
    • 2011-02-02
    • 1970-01-01
    相关资源
    最近更新 更多