最大值:通过在矩阵中对其赋值,为变量赋值

use*_*413 4 maxima

我遇到了一个复杂的问题.现在我想自动化它.在这样做时,我确实在矩阵中处理​​一个位置.这个位置确实包含一个变量.我想通过它在矩阵中的位置为这个变量赋值.这是我想要做的一个简单示例:

    (%i1) M:[a,b,c];
    (%o1) [a,b,c]
    (%i2) M[1];
    (%o2) a
    (%i3) ev(M[1]):3;
    (%o3) error: assignment: cannot assign to ev(M[1])
    (%i4) float(a);
    (%o4) a
Run Code Online (Sandbox Code Playgroud)

我希望变量"a"现在变为3.但ev()显然不适合这个.

我的问题是:我想要的甚至可能吗?有谁知道该怎么办?我看了一整天,我现在真的很沮丧:-(

Rob*_*ier 6

我认为你想要的是::运营商,它评估其左侧并分配给它.

(%i1) M : [a, b, c] $
(%i2) M[1] :: 123 $
(%i3) a;
(%o3)      123
Run Code Online (Sandbox Code Playgroud)