首页 > 解决方案 > 防止评估两个向量之和,同时仍在 Maxima 中显示向量

问题描述

我正在尝试在 Maxima 中实现以下目标(准确地说:我正在使用 Stack for Moodle,它使用 Maxima):

v1:matrix([1],[0],[0]);
v2:matrix([0],[1],[0]);
v3:r*v1+s*v2;

我现在希望不评估 v3 中的总和,同时仍要替换先前定义的向量 v1 和 v2,这就是我想要的输出

   [1]   [0]
 r*[0]+s*[1]
   [0]   [0]

虽然我可以使用

v3:'(r*v1+s*v2)

这导致

rv1+sv2

有没有办法做到这一点?

如果有帮助:

 [r] [0]
 [0]+[s]
 [0] [0]

输出也可以。

标签: maxima

解决方案


矩阵运算由许多标志控制——doallmxops等等。?? domx, ?? dosc, 并且?? dot会找到大部分或全部。

在这种情况下,您要做的是抑制将矩阵相加 - 为此目的doallmxops: falsedomxmxops: false具有预期的效果。

只设置这些标志以获得结果要好得多,而不是完全禁用简化,这将产生非常广泛且可能意想不到的效果。


推荐阅读