在 MuPad 中显示表达式和计算结果

Display expression and result of calculation in MuPad

假设我在 MuPad Notebook 中定义了两个变量:

x:=2;
y:=5

对于产品

z=x*y

我得到显示:

如果我使用 hold,我可以得到表达式:

z=hold(x*y)

但现在我想要同时拥有显示的表达式和结果。在我看来合乎逻辑的两个选项不起作用:

z=hold(x*y);z

z=hold(x*y);eval(z);

如何显示表达式和结果? 如果分两行就可以了,但我更喜欢一行:

z = x y = 10

我尝试了 printexpr2texthold_concat 的一些组合,但找不到令人信服的解决方案来获得所需的结果。但是有一个解释为什么第二行只是 returns z 而不是 10.

作业与方程式

z 是第二行的结果,因为你还没有给 z 赋值。所以结果说 zz。在 MuPad 中 = 是表达式的一部分。赋值运算符是 :=,因此与 Matlab 中的不同。它们之间的唯一区别是冒号。

写方程

为了写方程,我们使用 = 作为表达式的一部分。有一个等效函数:_equal。所以下面两行生成相同的结果:

x+y = 2
_equal(x+y, 2)

value分配给x

对于赋值,我们使用 :=(在 Matlab 中这只会是 =)。有一个等效函数:_assign。同样,以下两行生成相同的结果:

x := value
_assign(x, value)

将等式x+y = 2赋给eqn

这里可以明显看出区别:

eqn := x+y = 2
_assign(eqn, _equal(x+y, 2))