maxima:简写函数的参数列表
maxima: shorthanding the list of arguments to a function
假设我有一堆函数,比如
g(x0,x1,x2,x3,x4) := x0+x1+x2+x3+x4+x5
。我想在其他表达式中使用它们,但显式枚举所有变量 x0,...,x4
很麻烦。如何shorthand呢?我尝试了类似 vars : [x0,x1,..,x4]
的方法,然后像 g(vars)
那样传递它,但在这种情况下,当然 vars
被视为单个参数,我得到了一个错误。我需要做什么?
编辑:我要求的是更简单的东西。就我而言,答案是
像 "create aliases"、G1 : g1(x0,...,x4)
之类的东西。
但下面的答案强调了一件有用的事情。
您应该使用 apply
,如 manual 36.4 中所述:
(%i1) L : [1, 5, -10.2, 4, 3];
(%o1) [1, 5, - 10.2, 4, 3]
(%i2) apply (min, L);
(%o2) - 10.2
假设我有一堆函数,比如
g(x0,x1,x2,x3,x4) := x0+x1+x2+x3+x4+x5
。我想在其他表达式中使用它们,但显式枚举所有变量 x0,...,x4
很麻烦。如何shorthand呢?我尝试了类似 vars : [x0,x1,..,x4]
的方法,然后像 g(vars)
那样传递它,但在这种情况下,当然 vars
被视为单个参数,我得到了一个错误。我需要做什么?
编辑:我要求的是更简单的东西。就我而言,答案是
像 "create aliases"、G1 : g1(x0,...,x4)
之类的东西。
但下面的答案强调了一件有用的事情。
您应该使用 apply
,如 manual 36.4 中所述:
(%i1) L : [1, 5, -10.2, 4, 3];
(%o1) [1, 5, - 10.2, 4, 3]
(%i2) apply (min, L);
(%o2) - 10.2