【问题标题】:Manipulating matricies in Maxima (wx)在 Maxima (qx) 中操作矩阵
【发布时间】:2014-12-19 06:17:36
【问题描述】:

我想在 wxMaxima 中做一些简单的矩阵操作。我面临的问题是,Maxima 总是根据矩阵的各个元素提供答案。这是一个例子:

我想扩展 (A+B)(A+B)` 其中 A 和 B 是 2x2 矩阵。然后我想看看输出:

AA`+AB`+BA`+BB`,

但我得到的是一个像这样的矩阵:

[(b2+a2)^2+(b1+a1)^2 .......]

[…………………………] (我只是放点而不是输入所有元素)

那么有没有办法强制 Maxima 操作矩阵而不查看其中的元素??

谢谢

【问题讨论】:

  • 您可以使用延迟评估,在所有矩阵前加上撇号 ('),但简化后仍会扩展。 This 线程接近你想要的。
  • 所以在方程的一部分后面加上一个撇号应该阻止 Maxima 计算它??它不适合我。我只是得到不正确的语法错误...
  • 前缀表示“放在前面”,例如'A . transpose('A).
  • Daaaaaaa,好的。让我回家后试试。谢谢
  • 是的,这行得通。感谢您的帮助

标签: matrix maxima


【解决方案1】:

如果你不填写矩阵,只是将它们声明为非标量,你可以得到你想要的:

(%i1) declare([A,B], nonscalar)$
      (A+B) . transpose(A+B);
      %, expand;

(%o2) (B+A) . (transpose(B)+transpose(A))
(%o3) B . transpose(B)+B . transpose(A)+A . transpose(B)+A . transpose(A)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多